背景
- 工程中需要新的界面
- VS中新建Qt的ui文件,然后需要生成對(duì)應(yīng)的.cpp 和 .h 文件
新建Widget 對(duì)象
生成對(duì)應(yīng)的三個(gè)文件.ui, xxx. cpp, xxx.h
但是此時(shí)在QtWidgetsTestClass.h 里面,包含了#include “ui_QtWidgetsTestClass.h”。 會(huì)提示找不到該文件。該文件的生成,需要使用到Qt的uic.exe程序
UIC程序生成ui_xxxx.h文件
1.通過(guò)配置ui_QtWidgetsTestClass.ui的屬性,
2. 編譯工程
3. 生成ui_QtWidgetsTestClass.h
4. 將ui_QtWidgetsTestClass.h 添加到工程中
命令行: ui.exe路徑 xxx.ui -o ui_xxx.h
說(shuō)明: UIC xxx.ui
輸出: ui_xxx.h;%(Outputs)
附加依賴項(xiàng): xxx.ui; ui.exe path; %(ApplicationalInputs)
編譯出錯(cuò)
找不到moc_xxx , 在之前創(chuàng)建QtWidgetClass時(shí),選擇了Q_OBJECT選項(xiàng),因此,這里需要用到Qt的moc.exe工具,生成moc_xxxx.cpp文件。這里是moc_QtWidgetsTestClass.cpp文件
設(shè)置QtWidgetsTestClass.h的屬性
- 編譯工程,生成moc_QtWidgetsTestClass.cpp文件
- 將該文件拷貝至Debug目錄下
- 再次編譯工程
在生成的cpp和h文件中添加信號(hào)量
在QtWidgetsTestClass.h 中添加信號(hào)量時(shí), 會(huì)重新生成一下moc_QtWidgetsTestClass.cpp文件,這時(shí)候需要清理下工程,再重新編譯。否則會(huì)識(shí)別不到這個(gè)信號(hào)量而報(bào)錯(cuò)。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-782146.html
總結(jié)
- 使用VS添加新的UI對(duì)象感覺(jué)是比較麻煩的,需要3個(gè)步驟
- 步驟一: 通過(guò)向?qū)蓇i文件, xxx.cpp 和 xxx.h 三個(gè)文件
- 步驟二: 通過(guò)ui文件生成ui_xxxx.h 頭文件
- 步驟三: 通過(guò)xxx.h 生成moc_xxx.cpp文件
- 將moc_xxx.cpp文件拷貝到debug目錄下 (我的VS工程下的debug目錄下保存了大量的moc_xxx.cpp文件, 該工程最早也是從Qt工程轉(zhuǎn)變而來(lái)的)
綜上,在添加新的ui的時(shí)候,從ui到代碼這一步還是沒(méi)有Qt creator方便的。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-782146.html
到了這里,關(guān)于Qt Visual Studio添加Qt ui和編譯注意事項(xiàng)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!