├── .gitignore ├── .gitmodules ├── CustomQch ├── CustomQch.pro ├── Doxyfile ├── doxygen-qmi-style │ ├── README.md │ ├── footer.html │ ├── header.html │ ├── navtree │ │ ├── ftv2mlastnode.png │ │ ├── ftv2mnode.png │ │ ├── ftv2plastnode.png │ │ ├── ftv2pnode.png │ │ └── navtree.css │ ├── qmi.css │ └── search │ │ └── search.css ├── ifmetwindow.cpp ├── ifmetwindow.h ├── ifmetwindow.ui └── main.cpp ├── DbSigSlot ├── CMakeLists.txt ├── db_object.cpp ├── main.cpp ├── object.cpp └── object.h ├── DeDuplication ├── DeDuplication.sln ├── DeDuplication │ ├── DeDuplication.cpp │ ├── DeDuplication.h │ ├── DeDuplication.vcxproj │ ├── DeDuplication.vcxproj.filters │ └── main.cpp └── Unique │ ├── Unique.cpp │ ├── Unique.vcxproj │ └── Unique.vcxproj.filters ├── ExCRLF ├── CMakeLists.txt ├── bin │ └── ExCRLF.txt └── main.cpp ├── ExChangeSVGColor ├── .gitignore ├── CMakeLists.txt ├── README.md ├── display.gif ├── main.cpp ├── mosaic.svg ├── resource.qrc ├── widget.cpp └── widget.h ├── ExIntelDete ├── CMakeLists.txt ├── main.cpp ├── widget.cpp └── widget.h ├── ExPicShot ├── .gitignore ├── CMakeLists.txt ├── main.cpp ├── widget.cpp └── widget.h ├── ExThreadSafety └── multithread.h ├── LICENSE ├── QToolButtonAutoRaiseEx ├── CMakeAutoRaise │ ├── .gitignore │ ├── CMakeLists.txt │ ├── icons │ │ ├── normal │ │ │ ├── arrow.svg │ │ │ ├── copy.svg │ │ │ ├── download.svg │ │ │ ├── ellipse.svg │ │ │ ├── exit.svg │ │ │ ├── fill-ellipse.svg │ │ │ ├── fill-rect.svg │ │ │ ├── gif.svg │ │ │ ├── line.svg │ │ │ ├── mosaic.svg │ │ │ ├── pen.svg │ │ │ ├── recover.svg │ │ │ ├── rectangle.svg │ │ │ ├── revoke.svg │ │ │ ├── right.svg │ │ │ ├── screenshot.svg │ │ │ ├── text.svg │ │ │ └── update.svg │ │ └── tool │ │ │ ├── arrow.svg │ │ │ ├── cancel.svg │ │ │ ├── ellipse.svg │ │ │ ├── finish.svg │ │ │ ├── gif.svg │ │ │ ├── mosaic.svg │ │ │ ├── pen.svg │ │ │ ├── pin.svg │ │ │ ├── rectangle.svg │ │ │ ├── renewal.svg │ │ │ ├── revocation.svg │ │ │ ├── save.svg │ │ │ ├── serialnumber.svg │ │ │ ├── smooth.svg │ │ │ └── text.svg │ ├── main.cpp │ ├── resources.qrc │ ├── testbtstyle.cpp │ ├── testbtstyle.h │ ├── widget.cpp │ └── widget.h └── QMakeAutoRaise │ ├── .gitignore │ ├── QMakeAutoRaise.pro │ ├── icons │ ├── normal │ │ ├── arrow.svg │ │ ├── copy.svg │ │ ├── download.svg │ │ ├── ellipse.svg │ │ ├── exit.svg │ │ ├── fill-ellipse.svg │ │ ├── fill-rect.svg │ │ ├── gif.svg │ │ ├── line.svg │ │ ├── mosaic.svg │ │ ├── pen.svg │ │ ├── recover.svg │ │ ├── rectangle.svg │ │ ├── revoke.svg │ │ ├── right.svg │ │ ├── screenshot.svg │ │ ├── text.svg │ │ └── update.svg │ └── tool │ │ ├── arrow.svg │ │ ├── cancel.svg │ │ ├── ellipse.svg │ │ ├── finish.svg │ │ ├── gif.svg │ │ ├── mosaic.svg │ │ ├── pen.svg │ │ ├── pin.svg │ │ ├── rectangle.svg │ │ ├── renewal.svg │ │ ├── revocation.svg │ │ ├── save.svg │ │ ├── serialnumber.svg │ │ ├── smooth.svg │ │ └── text.svg │ ├── main.cpp │ ├── resources.qrc │ ├── testbtstyle.cpp │ ├── testbtstyle.h │ ├── widget.cpp │ └── widget.h ├── QtComboModeShow ├── QtComboModeShow.pro └── main.cpp ├── QtConnect ├── QtConnect.pro ├── main.cpp ├── widget.cpp └── widget.h ├── QtCustomDialogEx ├── ExCustomMainWin.cpp ├── ExCustomMainWin.h ├── ExCustomMainWin.ui ├── ExDlgLocate.cpp ├── ExDlgLocate.h ├── ExDlgLocate.ui ├── ExDlgSetHeaders.cpp ├── ExDlgSetHeaders.h ├── ExDlgSetHeaders.ui ├── ExDlgSize.cpp ├── ExDlgSize.h ├── ExDlgSize.ui ├── QtCustomDialogEx.pro ├── images │ ├── Image001.png │ ├── Image002.png │ ├── Image003.png │ ├── Image004.jpg │ ├── Image005.png │ ├── Image006.png │ └── Image007.png ├── main.cpp ├── qt.ico └── resources.qrc ├── QtCustomTypeAndQMetaType ├── QtCustomTypeAndQMetaType.pro └── main.cpp ├── QtDateTimeEx ├── ExDateTime.cpp ├── ExDateTime.h ├── ExDateTime.ui ├── QtDateTimeEx.pro ├── main.cpp └── qt.ico ├── QtEvent ├── QtEvent.pro └── main.cpp ├── QtHttpEx ├── ExHttp.cpp ├── ExHttp.h ├── ExHttp.ui ├── QtHttpEx.pro ├── images │ ├── Image1.png │ ├── Image2.jpg │ ├── Image3.png │ ├── Image4.png │ ├── Image5.png │ ├── Image6.png │ ├── icon.icns │ └── icon.ico ├── main.cpp └── resources.qrc ├── QtMDIEx ├── ExMDI.cpp ├── ExMDI.h ├── ExMDI.ui ├── ExMainWindow.cpp ├── ExMainWindow.h ├── ExMainWindow.ui ├── QtMDIEx.pro ├── images │ ├── .DS_Store │ ├── 1.png │ ├── 10.png │ ├── 11.png │ ├── 12.png │ ├── 13.jpg │ ├── 2.png │ ├── 3.png │ ├── 4.png │ ├── 5.png │ ├── 6.jpg │ ├── 7.png │ ├── 8.png │ └── 9.png ├── main.cpp └── resources.qrc ├── QtMeatObjectEx ├── ExPerson.cpp ├── ExPerson.h ├── ExWidget.cpp ├── ExWidget.h ├── ExWidget.ui ├── QtMeatObjectEx.pro ├── main.cpp └── qt.ico ├── QtMetaAboutClass ├── QtMetaAboutClass.pro ├── m.h └── main.cpp ├── QtMyStyleEx ├── .gitignore ├── QtExample01 │ └── QtStyleEx │ │ ├── QtStyleEx.pro │ │ ├── main.cpp │ │ ├── widget.cpp │ │ └── widget.h ├── QtExample02 │ └── QtStyleEx │ │ ├── QtStyleEx.pro │ │ ├── main.cpp │ │ ├── mystyle.cpp │ │ ├── mystyle.h │ │ ├── widget.cpp │ │ └── widget.h └── QtExample03 │ └── QtStyleEx │ ├── QtStyleEx.pro │ ├── main.cpp │ ├── mystyle.cpp │ ├── mystyle.h │ ├── myswitchbutton.cpp │ ├── myswitchbutton.h │ ├── myswitchbutton_p.h │ ├── widget.cpp │ └── widget.h ├── QtObjectTree ├── QtObjectTree.pro └── main.cpp ├── QtProperty ├── QtProperty.pro ├── m.h └── main.cpp ├── QtQDialogEx ├── ExDialog.cpp ├── ExDialog.h ├── ExDialog.ui ├── QtQDialogEx.pro ├── main.cpp └── qt.ico ├── QtQFileSystemModelEx ├── ExQFileSystemModel.cpp ├── ExQFileSystemModel.h ├── ExQFileSystemModel.ui ├── QtQFileSystemModelEx.pro ├── main.cpp └── qt.ico ├── QtQHostInfoEx ├── ExQHostInfo.cpp ├── ExQHostInfo.h ├── ExQHostInfo.ui ├── Icon.icns ├── QtQHostInfoEx.pro ├── icon.ico └── main.cpp ├── QtQMetaProperty ├── QtQMetaProperty.pro ├── m.h └── main.cpp ├── QtQProgressBarEx ├── ExQProgressBar.cpp ├── ExQProgressBar.h ├── ExQProgressBaressBarressbar.ui ├── QtQProgressBarEx.pro ├── main.cpp └── qt.ico ├── QtQSliderEx ├── ExQSlider.cpp ├── ExQSlider.h ├── ExQSlider.ui ├── QtQSliderEx.pro ├── main.cpp └── qt.ico ├── QtQStandardItemModelEx ├── ExDelegate.cpp ├── ExDelegate.h ├── ExQStandardItemModel.cpp ├── ExQStandardItemModel.h ├── ExQStandardItemModel.ui ├── QtQStandardItemModelEx.pro ├── images │ ├── Image001.png │ ├── Image002.png │ ├── Image003.png │ ├── Image004.png │ ├── Image005.png │ ├── Image006.png │ ├── Image007.jpg │ ├── Image008.jpg │ ├── Image009.jpg │ ├── Image010.jpg │ ├── Image011.jpg │ └── Image012.png ├── main.cpp ├── qt.ico ├── resources.qrc └── 录入的人员信息.txt ├── QtQStringEx ├── ExQString.cpp ├── ExQString.h ├── ExQString.ui ├── QtQStringEx.pro ├── main.cpp └── qt.ico ├── QtQStringFunEx ├── ExQStringFun.cpp ├── ExQStringFun.h ├── ExQStringFun.ui ├── QtQStringFunEx.pro ├── main.cpp └── qt.ico ├── QtQStringListModelEx ├── ExQStringListModel.cpp ├── ExQStringListModel.h ├── ExQStringListModel.ui ├── QtQStringListModelEx.pro └── main.cpp ├── QtQTableWidgetEx ├── ExQTableWidget.cpp ├── ExQTableWidget.h ├── ExQTableWidget.ui ├── QtQTableWidgetEx.pro ├── images │ ├── Image002.ico │ └── Image003.ico ├── main.cpp ├── qt.ico └── resoure.qrc ├── QtQTreeWidgetEx ├── ExQTreeWidget.cpp ├── ExQTreeWidget.h ├── ExQTreeWidget.ui ├── QtQTreeWidgetEx.pro ├── image │ ├── Image001.jpg │ ├── Image002.jpg │ ├── Image003.jpg │ ├── Image004.jpg │ ├── Image005.jpg │ ├── Image006.jpg │ ├── Image007.jpg │ ├── Image008.jpg │ ├── Image009.jpg │ ├── Image010.jpg │ ├── Image011.jpg │ ├── Image012.jpg │ ├── Image013.ico │ ├── Image014.jpg │ ├── Image015.jpg │ └── Image016.jpg ├── main.cpp ├── qt.ico └── resources.qrc ├── QtQVariant ├── QtQVariant.pro └── main.cpp ├── QtQ_OBJECT ├── QtQ_OBJECT.pro ├── m.cpp ├── m.h └── main.cpp ├── QtQcomboBoxEx ├── ExQcomboBox.cpp ├── ExQcomboBox.h ├── ExQcomboBox.ui ├── QtQcomboBoxEx.pro ├── images │ ├── github.ico │ ├── gril.ico │ └── qt.ico ├── main.cpp └── resources.qrc ├── QtQdialQLCDEx ├── ExQdialQLCD.cpp ├── ExQdialQLCD.h ├── ExQdialQLCD.ui ├── QtQdialQLCDEx.pro ├── main.cpp └── qt.ico ├── QtQlistWidgetEx ├── ExQListWidget.cpp ├── ExQListWidget.h ├── ExQListWidget.ui ├── QtQlistWidgetEx.pro ├── images │ ├── List.png │ ├── TREE.png │ ├── Table.png │ ├── add.png │ ├── clear.png │ ├── delete.png │ ├── exit.png │ ├── github.png │ ├── gril.png │ ├── init.png │ ├── insert.png │ └── menu.png ├── main.cpp ├── qt.ico └── resources.qrc ├── QtSigSlot ├── QtSigSlot.pro ├── main.cpp ├── mainwindow.cpp ├── mainwindow.h └── mainwindow.ui ├── QtTcpEx ├── ExTcpClient │ ├── ExTcpClient.cpp │ ├── ExTcpClient.h │ ├── ExTcpClient.pro │ ├── ExTcpClient.ui │ ├── images │ │ ├── Image1.png │ │ ├── Image2.jpg │ │ ├── Image3.png │ │ ├── Image4.png │ │ ├── Image5.png │ │ ├── Image6.png │ │ ├── icon.icns │ │ └── icon.ico │ ├── main.cpp │ └── resource.qrc └── ExTcpServer │ ├── ExTcpServer.cpp │ ├── ExTcpServer.h │ ├── ExTcpServer.pro │ ├── ExTcpServer.ui │ ├── images │ ├── Image1.png │ ├── Image2.jpg │ ├── Image3.png │ ├── Image4.png │ ├── Image5.png │ ├── Image6.png │ ├── icon.icns │ ├── icon.ico │ └── resources.qrc │ └── main.cpp ├── QtUdpEx ├── ExMulticast │ ├── ExMulticast.cpp │ ├── ExMulticast.h │ ├── ExMulticast.pro │ ├── ExMulticast.ui │ ├── images │ │ ├── Image1.png │ │ ├── Image2.jpg │ │ ├── Image3.png │ │ ├── Image4.png │ │ ├── Image5.png │ │ ├── Image6.png │ │ ├── icon.icns │ │ └── icon.ico │ ├── main.cpp │ └── resources.qrc └── ExTrans │ ├── ExTrans.cpp │ ├── ExTrans.h │ ├── ExTrans.pro │ ├── ExTrans.ui │ ├── images │ ├── Image1.png │ ├── Image2.jpg │ ├── Image3.png │ ├── Image4.png │ ├── Image5.png │ ├── Image6.png │ ├── icon.icns │ └── icon.ico │ ├── main.cpp │ └── resources.qrc ├── README.md ├── Studio ├── DesignPatterns │ ├── AbstractFactory.cpp │ ├── AbstractFactory.h │ ├── DesignPatterns.cpp │ ├── DesignPatterns.vcxproj │ ├── DesignPatterns.vcxproj.filters │ ├── FactoryMethod.cpp │ ├── FactoryMethod.h │ ├── Observer.cpp │ ├── Observer.h │ ├── Singleton.cpp │ └── Singleton.h ├── Studio.sln └── Studio │ ├── BinarySearch.cpp │ ├── BinarySearch.h │ ├── MemoryAlignment.h │ ├── SharedPtr.cpp │ ├── SharedPtr.h │ ├── SpecialMembers.cpp │ ├── SpecialMembers.h │ ├── Studio.cpp │ ├── Studio.vcxproj │ ├── Studio.vcxproj.filters │ ├── UniquePtr.cpp │ └── UniquePtr.h ├── TestHotKey ├── CMakeLists.txt ├── QHotkey │ ├── QHotkey │ ├── QHotkey.pro │ ├── qhotkey.cpp │ ├── qhotkey.h │ ├── qhotkey.pri │ ├── qhotkey_mac.cpp.BAK │ ├── qhotkey_p.h │ ├── qhotkey_win.cpp │ └── qhotkey_x11.cpp.BAK ├── Resources.qrc ├── main.cpp ├── resources │ └── PicShot_32.svg ├── tray.cpp ├── tray.h ├── widget.cpp └── widget.h ├── WINDOWS_MSVC_MinGW & LINUX_GCC & MACOS_CLANG 所遇到奇葩问题集锦.md ├── tools └── qt5.natvis └── www.regexlab.com_zh_encoding.htm.png /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "ExPicShot/3rdparty/spdlog"] 2 | path = ExPicShot/3rdparty/spdlog 3 | url = https://github.com/gabime/spdlog.git 4 | -------------------------------------------------------------------------------- /CustomQch/CustomQch.pro: -------------------------------------------------------------------------------- 1 | #------------------------------------------------- 2 | # 3 | # Project created by QtCreator 2021-03-08T15:28:01 4 | # 5 | #------------------------------------------------- 6 | 7 | QT += core gui 8 | 9 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 10 | 11 | TARGET = CustomQch 12 | TEMPLATE = app 13 | 14 | # The following define makes your compiler emit warnings if you use 15 | # any feature of Qt which has been marked as deprecated (the exact warnings 16 | # depend on your compiler). Please consult the documentation of the 17 | # deprecated API in order to know how to port your code away from it. 18 | DEFINES += QT_DEPRECATED_WARNINGS 19 | 20 | # You can also make your code fail to compile if you use deprecated APIs. 21 | # In order to do so, uncomment the following line. 22 | # You can also select to disable deprecated APIs only up to a certain version of Qt. 23 | #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 24 | 25 | CONFIG += c++11 26 | 27 | SOURCES += \ 28 | main.cpp \ 29 | ifmetwindow.cpp 30 | 31 | HEADERS += \ 32 | ifmetwindow.h 33 | 34 | FORMS += \ 35 | ifmetwindow.ui 36 | 37 | # Default rules for deployment. 38 | qnx: target.path = /tmp/$${TARGET}/bin 39 | else: unix:!android: target.path = /opt/$${TARGET}/bin 40 | !isEmpty(target.path): INSTALLS += target 41 | -------------------------------------------------------------------------------- /CustomQch/doxygen-qmi-style/README.md: -------------------------------------------------------------------------------- 1 | Qmi is a "**Q**t **Mi**nimal" theme for the Doxygen HTML documentation. 2 | It based on official Qt4 documentation's style. 3 | 4 | # How to setup 5 | 6 | To use `qmi` style make the following changes in your Doxyfile: 7 | 8 | # Project section 9 | BRIEF_MEMBER_DESC = NO 10 | 11 | # HTML section 12 | HTML_HEADER = ${path_to_qmi}/header.html 13 | HTML_FOOTER = ${path_to_qmi}/footer.html 14 | HTML_STYLESHEET = ${path_to_qmi}/qmi.css 15 | 16 | **NOTE**: 17 | 18 | * If you use **_tree navigation panel_** then copy contents of the `navtree` dir to the documentation html dir. 19 | * If you use **_search_** feature then copy contents of the `search` dir to the `html/search`. 20 | 21 | # Examples 22 | 23 | If you want to see `qmi` style in action then use the following links with examples: 24 | 25 | * [Qwt docs](http://skozlovf.github.com/doxygen-qmi-style/qwt) 26 | * [libxml++ docs](http://skozlovf.github.com/doxygen-qmi-style/libxmlpp) (with tree navigation and search) 27 | 28 | 29 | ## Screenshots 30 | 31 | * **Main page**: 32 | 33 |  34 | 35 | * **Index page**: 36 | 37 |  38 | 39 | * **Member description**: 40 | 41 |  42 | -------------------------------------------------------------------------------- /CustomQch/doxygen-qmi-style/footer.html: -------------------------------------------------------------------------------- 1 | 2 |