日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Qt图形界面编程入门(创建一个简单的程序)

發布時間:2025/3/8 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt图形界面编程入门(创建一个简单的程序) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1,手工編碼方式

利用手工編碼方式建立“Hello Qt!”程序

第一步:

?

得到界面

2,無UI的向導方式

?

從圖中,我們發現向導為窗口程序提供了3個基類,分別外QMainWindow、QWidget、QDialog,3個基類的區別如下:

QMainWindow類:提供一個有菜單欄、工具欄和一個狀態欄的應用窗口模式

QWidget類:是所有用戶界面對象的基類。它從窗口系統接收鼠標、鍵盤和其他事件,并且在屏幕上繪制增加。

QDialog類:是對話窗口的基類。對話框窗口的主要用于短期任務以及和用戶進行簡要通信的頂級窗口

工程建立完畢后,有4個文件。其中頭文件dialog.h和源文件dialog.cpp共同實現了僅屬于本項目的對話框類Dialog。類Dialog派生自Qt的基本對話框類QDialog。

3,Qt設計器方式

借助Qt設計器(Qt Designer)可以以所見即所得的方式構件GUI程序。

?

(1)設計區:就是正中間的部分,主要用來布置各個窗口部件。

(2)部件列表窗:這里分類羅列了各種常用的標準部件,可以使用鼠標將這些部件
拖人主設計區中,放到主設計區的界面上。

(3)對象查看器:這里列出了界面上所有部件的對象名稱和父類,而且以樹形結構
顯示了各個部件的所屬關系。可以在這里單擊對象來選中某個部件。

(4)屬性編輯器:這里顯示了各個部件的常用屬性信息,可以在這里更改部件的-
些屬性,如大小、位置等。這些屬性按照從祖先繼承的屬性、從父類繼承的屬性和自己的
屬性的順序進行了分類。

(5) Action(動作)編輯器、信號和槽編輯器:這些和菜單命令、控件事件響應等相關,
放到以后使用時再介紹。

(6)常用功能工具欄:該工具欄中前4個按鈕用于進人相應的模式,分別是窗口部件編輯模式(這是默認模式)、信號/槽編輯模式、伙伴編輯模式和Tab順序編輯模式。后面幾個按鈕用來實現添加布局管理器以及調整控件大小等功能。

第2步,在對話框中添加控件。

從部件列表窗中拖曳一個Label(標簽)到主窗體中,可以在標簽屬性編輯器中修改字體、對齊方式等屬性

?

?

生成編譯結構的文件,根據自己的路徑來尋找ui_dialog

/******************************************************************************** ** Form generated from reading UI file 'dialog.ui' ** ** Created by: Qt User Interface Compiler version 5.3.1 ** ** WARNING! All changes made in this file will be lost when recompiling UI file! ********************************************************************************/#ifndef UI_DIALOG_H #define UI_DIALOG_H#include <QtCore/QVariant> #include <QtWidgets/QAction> #include <QtWidgets/QApplication> #include <QtWidgets/QButtonGroup> #include <QtWidgets/QDialog> #include <QtWidgets/QHeaderView> #include <QtWidgets/QLabel>QT_BEGIN_NAMESPACEclass Ui_Dialog { public:QLabel *label;void setupUi(QDialog *Dialog){if (Dialog->objectName().isEmpty())Dialog->setObjectName(QStringLiteral("Dialog"));Dialog->resize(400, 300);label = new QLabel(Dialog);label->setObjectName(QStringLiteral("label"));label->setGeometry(QRect(170, 140, 111, 51));retranslateUi(Dialog);QMetaObject::connectSlotsByName(Dialog);} // setupUivoid retranslateUi(QDialog *Dialog){Dialog->setWindowTitle(QApplication::translate("Dialog", "Dialog", 0));Dialog->setProperty("label", QVariant(QString())); #ifndef QT_NO_ACCESSIBILITYlabel->setAccessibleName(QString()); #endif // QT_NO_ACCESSIBILITY #ifndef QT_NO_ACCESSIBILITYlabel->setAccessibleDescription(QString()); #endif // QT_NO_ACCESSIBILITYlabel->setText(QApplication::translate("Dialog", "Hello Qt!", 0));} // retranslateUi};namespace Ui {class Dialog: public Ui_Dialog {}; } // namespace UiQT_END_NAMESPACE#endif // UI_DIALOG_H

?

總結

以上是生活随笔為你收集整理的Qt图形界面编程入门(创建一个简单的程序)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。