自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

解析關(guān)于QT Webkit開發(fā)學習筆記

移動開發(fā)
QT Webkit開發(fā)學習筆記是本文要介紹的內(nèi)容,主要是來學習QT中webkit的學習使用方法,具體內(nèi)容的實現(xiàn)來看本文詳解。

QT Webkit開發(fā)學習筆記是本文要介紹的內(nèi)容,主要是來學習QTwebkit的學習使用方法,具體內(nèi)容的實現(xiàn)來看本文詳解。

1、在Qt中使用 WebKit 瀏覽器核心

使用 QtWebKit 需要在工程文件(*.pro)中加入:

  1. QT +=webkit  
  2. QT += network 

2、QtWebKit的flash支持

QtWebKit 到固定的路徑(NPAPI插件廠商的安裝路徑)下載入flash控件,如果需要flash支持,確保一下文件存在:

  1. C:\WINDOWS\system32\Macromed\Flash\NPSWF32.dll 

npswf32.dll就是 QtWebKit 需要的flash插件,由 micromedia 官方提供。

3、使用qt插件

分發(fā)程序時,需要打包 qt\plugins\imageformats 目錄內(nèi)的 dll 文件(它們是qt的圖形圖像插件),才能支持 jpg、png、gif等的圖形圖像格式;***連 plugins\codecs 目錄內(nèi)的dll文件一起打包,他們是用來支持各種語言編碼的(包括中文支持);除此以外還有其他一些qt插件。

4、如果使用了qt插件,需要設置qt插件路徑

qt應用程序需要指定加載qt插件的目錄,以便載入上面提到的 plugins\imageformats 、plugins\codecs 等目錄內(nèi)的dll文件。

標準方式是通過 qt.conf 文件(放在qt應用程序相同文件夾內(nèi))設置插件目錄的路徑。但是qt.conf內(nèi)必須使用絕對路徑,這不太容易確定。

可以直接在應用程序內(nèi)指定 qt插件的路徑,例如:

  1. QApplication aApp(argc,argv);  
  2. QApplication::setLibraryPaths(QStringList(QCoreApplication::applicationDirPath()+"/plugins/")); 

在調(diào)用 QCoreApplication::applicationDirPath() 前,必須先創(chuàng)建一個 QApplication的對象

5、中文支持:

  1. QTextCodec *codec=QTextCodec::codecForName("GB2312");  
  2. QTextCodec::setCodecForLocale(codec);  
  3. QTextCodec::setCodecForCStrings(codec);  
  4. QTextCodec::setCodecForTr(codec); 

6、使用 windows api

只要 #include<windows.h>就可以向MFC一樣使用windows的api 函數(shù),以及windows的數(shù)據(jù)類型,例如:LPCTSTR。

為了保持跨平臺特性,在用到windows api 函數(shù) 和 windows數(shù)據(jù)類型的地方加上宏判斷:

  1. #ifdefined(Q_WS_WIN)  
  2. ... ...  
  3. #endif 

7、讓QtWebKit使用緩存

  1.  QNetworkDiskCache *diskCache=newQNetworkDiskCache(this);  
  2. QString location=QDesktopServices::storageLocation(QDesktopServices::CacheLocation);  
  3. diskCache->setCacheDirectory(location);  
  4. this->ui->wndHtmlView->page()->networkAccessManager()->setCache(diskCache);  
  5. QDesktopServices::storageLocation(QDesktopServices::CacheLocation); 

返回的是系統(tǒng)的緩存目錄的路徑

8、windows eclipse中無法啟動 debug , 會報錯:

  1. gdb: unknown target exception 0xc0000135 at 0x7c984ed1 

可能是因為用 gdb.exe 啟動你的程序時無法找到qt庫的dll, 只要在環(huán)境變量加入 qt/bin 的路徑就好了

9、windows7/vista 中的 UAC 支持

建一個資源文件 resource.rc ,內(nèi)容 :

  1. 1    24    "manifest.xml" 

資源類型為 24 , id 為 1 ,資源內(nèi)容在 manifest.xml 中; manifest.xml 的內(nèi)容為:

  1. <?xml version="1.0" encoding="UTF-8" standalone="yes"?>   
  2. <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">   
  3. <assemblyIdentity   
  4. version="1.0.0.0"   
  5. processorArchitecture="X86"   
  6. name="test.exe.manifest"   
  7. type="win32"   
  8. />   
  9. <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">   
  10. <security>   
  11. <requestedPrivileges>   
  12. <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />   
  13. </requestedPrivileges>   
  14. </security>   
  15. </trustInfo>   
  16. </assembly>  

在項目的 .pro (或 .pri) 文件中加入:

  1. RC_FILE = resource.rc  
  2. (RC_FILE  只在 windows 平臺上有效) 

然后 clean project 重新編譯

10、exe 版本信息 ,在資源文件中加入:

  1.  # if defined(UNDER_CE)  
  2. #  include <winbase.h> 
  3. # else  
  4. #  include <winver.h> 
  5. # endif  
  6.  
  7. VS_VERSION_INFO VERSIONINFO  
  8.     FILEVERSION 1,0,0,0  
  9.     PRODUCTVERSION 1,0,0,0  
  10.     FILEFLAGSMASK 0x3fL  
  11. #ifdef _DEBUG  
  12.    FILEFLAGS VS_FF_DEBUG  
  13. #else  
  14.     FILEFLAGS 0x0L  
  15. #endif  
  16.     FILEOS VOS__WINDOWS32  
  17.     FILETYPE VFT_DLL  
  18.     FILESUBTYPE 0x0L  
  19.     BEGIN  
  20.         BLOCK "StringFileInfo"  
  21.         BEGIN  
  22.             BLOCK "040904B0"  
  23.             BEGIN  
  24.                 VALUE "CompanyName", "公司名字\0"  
  25.                 VALUE "FileDescription", "文件描述\0"  
  26.                 VALUE "FileVersion", "文件版本\0"  
  27.                 VALUE "ProductName", "產(chǎn)品名字\0"  
  28.                 VALUE "產(chǎn)品版本", "0.1.0\0"  
  29.                 VALUE "LegalCopyright", "版權(quán)信息\0"  
  30.             END  
  31.         END  
  32.     END  
  33. /* End of Version info */ 

小結(jié):解析關(guān)于QT Webkit開發(fā)學習筆記的內(nèi)容介紹完了,希望通過本文的學習能對你有所幫助!

責任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-09-09 17:24:39

Qt Webkit模塊

2011-08-29 10:22:48

QtWebkit 模塊HTML文檔

2011-06-14 11:48:38

Webkit QT

2011-08-30 15:49:03

QtQuick

2011-08-29 14:10:03

QtWebkitFlash

2011-09-01 14:14:00

jQuery Mobi

2011-09-09 15:51:58

Android Web應用

2011-08-29 14:27:33

QTWebkit瀏覽器

2011-09-01 15:22:16

Qt WebKitWebKit

2011-08-23 17:33:08

LuaMetatable

2011-06-22 15:50:45

QT 線程

2011-08-30 13:33:29

Qt數(shù)據(jù)庫

2011-10-13 14:26:12

Qt WebKitWebKit

2011-08-23 13:15:37

LUAPackage

2011-08-31 15:59:10

LUAWeb 開發(fā)

2011-09-09 16:23:16

Android Web測試

2011-08-29 11:25:29

QTWebKit鼠標

2011-09-07 16:36:00

Qt Widget

2011-09-09 15:31:04

Android Web插件

2011-09-09 18:43:13

Qt Webkit瀏覽器
點贊
收藏

51CTO技術(shù)棧公眾號