自定義外掛程式

2021-05-24 11:49:11 字數 2649 閱讀 1363

自定義外掛程式

建立自定義外掛程式1.

建立工程

qt4 designer plugin

後續配置都使用預設值,這裡我們建立乙個

qhist

外掛程式。2.

新建後,直接編譯,會產生如下錯誤

1>link : fatal error lnk1181: cannot open input file 'qtdesignerd.lib'

這是因為此工程預設引用的是

qtdesignerd.lib

庫,更改其為版本對應的庫即可消除故障,我這裡使用的是

qtdesignerd4.lib

(release版本使用

qtdesigner4.lib

)。3.

修改檔案,增加宣告,如下:

修改前:

#include

class

qhist : public

qwidget

修改後#include

#include

class

qdesigner_widget_export

qhist : public

qwidget

如果不執行此操作,後續應用程式連線時,會上報鏈結錯誤:

error lnk2019: 4.

實現外掛程式,這裡我只是在此控制項中繪製了一條直線。

過載paintevent事件

protected:

void

paintevent(qpaintevent *event);

void

qhist::paintevent(qpaintevent *event)

這時,編譯會報錯誤,原因是qhist.cpp中還缺少標頭檔案,引入即可消除:

#include

5.編譯

release

版本6.

到此我們就完成了外掛程式的建立;

使用自定義外掛程式(qt designer

1.

將編譯生成的相關檔案拷貝到qt的

plugins/designer

目錄;2.

將qhist.h

檔案拷貝到

qt所在的

include/qtgui

目錄;到此,開啟

qt designer

,即可看到新增的

qhist

外掛程式了;

使用自定義外掛程式(

1.

將編譯生成的相關檔案拷貝到用用工程所在的工程目錄;

到此,編譯應用程式,執行即可正常使用自定義的外掛程式了;

建立多個外掛程式到乙個外掛程式庫

前面介紹的是生成單個自定義外掛程式,

qt還支援將多個自定義外掛程式生成到乙個外掛程式庫中,如下:

1.建立乙個外掛程式庫工程,工程名為

mycustomwidgets;2.

建立新的

類,分別是

qhist

,qhistplugin

,qscatter,qscatterplugin,相關實現**參見上述單個外掛程式的實現,和先前的唯一差別就是:原始檔末尾不在需要新增

q_export_plugin2

宣告;3.

修改mycustomwidgets

的定義和實現,如下:

//

標頭檔案

#include

#include

#include

"qhistplugin.h"

#include

"qscatterplugin.h"

class

mycustomwidgets: public

qobject, public

qdesignercustomwidgetcollectioninte***ce;

//

原始檔

#include

"mycustomwidgets.h"

mycustomwidgets

::mycustomwidgets(qobject *parent)

: qobject(parent)

qlist

mycustomwidgets::customwidgets() const

q_export_plugin(mycustomwidgets)這裡從

qdesignercustomwidgetcollectioninte***ce

派生了乙個子類mycustomwidgets;

4.編譯

release

版本,將此庫檔案拷貝到

designer

相關目錄,此時新開啟

qt designer

將可以看到兩個自定義外掛程式;

自定義外掛程式

工具類方法 擴充套件的語法 extend 呼叫 方法名 物件級別的方法 擴充套件語法 fn.extend 呼叫 選擇器 方法名 工具類 工具類方法 extend extend rtrim function str randomcode function num else if num 4 retur...

cordova 自定義外掛程式

在使用cordova 的過程中,雖然官方提供的外掛程式以及其他人開源的外掛程式較多。但有時為了實現某種需求,還是需要自己編寫外掛程式。以前總是會手動的配置cordova外掛程式,具體可以參考phonegap手動配置外掛程式 今天主要是介紹官方提供的plugman來建立外掛程式 首先,安裝plumam...

jquery自定義外掛程式

jquery自定義外掛程式的幾種常用的方法 第一種方法 fn.fun function target fun 第二種方法 fn.extend target fun 第三種方法 extend fun 在這裡需要詳細解釋一下jquery的api extend var obj1 var obj2 var ...