基于QT 5.5的MingGW自定義控件:
參考博文:https://blog.csdn.net/jiguangfan/article/details/84785535
注意點:1.編譯插件的QT版本號饵蒂、編譯器墓怀、以及生成插件模式(debug/release)需要與引入自定義插件的項目保持一致细卧,否則會報錯抑月;
? ? ? ? ? ? ? 2.release版本:最簡單的APP的exe運行需要依賴7個DLL :libgcc_s_dw2-1.dll? ?libstdc++-6.dll? ?libwinpthread-1.dll? ? ?Qt5Core.dll? ?Qt5Gui.dll Qt5Widgets.dll? platforms\qwindows.dll 竹观,這些依賴也要與自定義控件的dll編譯器版本保持一致筋岛,一定要使用 QT安裝目錄的對應(yīng)的編譯器下bin的dll,比如使用QT5.5的mingw編譯:D:\software\5.5\mingw492_32\bin?
如下圖所示則為dll編譯版本不一致導(dǎo)致:
? ? ? ?自定義組件demo的體會:與QT自帶封裝的QPushButton一樣门岔,自定義相當(dāng)于重新封裝控件逢净,需要定義屬性和重寫事件钥庇,QT框架繼承的思想比較突出牍鞠,封裝比較完善可用,強大的控件體系也是特色评姨,相比之前直接使用QT自帶的控件难述,自定義需要更全面掌握各個控件的屬性,并從開發(fā)業(yè)務(wù)角度考慮控件的實用性吐句。