- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式应用系统开发--QT creator进阶1
嵌入式应用系统开发----Qt Creator 进阶一 一.Qt Creator 编写多窗口程序 一.Qt Creator 编写多窗口程序 实现原理: 程序里我们先建立一个主工程,作为主界面,然后再建立一个对话框类,将其加入工程中,然后在程序中调用自己新建的对话框类来实现多窗口。 实现过程: 1.首先新建 “Qt Gui 应用” 工程,工程名为 nGui,选中QT模拟器,基类(Base class) 选为 QWidget。 2.新建对话框类,选择“文件—新建文件或工程”如下图,在新建中,选择“ Qt 设计师界面类”。 3.选择 Dialog without Buttons。 4.类名设为 myDlg。 5.点击 Finish 完成。注意这里已经默认将其加入到了我们刚建的工程中了。 进入myDlg控件界面 6.如下图,在 mydlg.ui 中拖入一个 Push Button,将其上的文本改为“进入主窗口”,在其属性窗口中将其 objectName 改为 enterBtn,在下面的 Signals and slots editor 中进行信号和槽的关联,首先点击“+”号,添加信号和槽。其中,“发送者” 设为 enterBtn,“信号” 设为 clicked(),“接受者” 设为 myDlg,“槽” 设为 accept()。 这样就实现了单击这个按钮使这个对话框关闭并发出 Accepted 信号的功能。下面我们将利用这个信号。 7.修改主函数 main.cpp,如下: 9.我们选择单击事件 clicked()。 10.我们在弹出的槽函数中添加一句: my2.show(); my2为我们新建对话框类的另一个对象,但是 my2我们还没有定义,所以在 widget.h 文件中添加相应代码,如下,先加入头文件,再加入 my2的定义语句,这里我们将其放到 private里,因为一般的函数都放在 public 里,而变量都放在 private 里。 #ifndef WIDGET_H #define WIDGET_H #include QtGui/QWidget #include mydlg.h“ //包含头文件 namespace Ui { class Widget; } class Widget : public QWidget { Q_OBJECT public: Widget(QWidget *parent = 0); ~Widget(); private: Ui::Widget *ui;myDlg my2; //对 my2进行定义 private slots: void on_pushButton_clicked(); }; #endif // WIDGET_H 到这里,再运行程序,便能完成我们实验要求的功能了。整个程序里,我们用两种方法实现了信号和槽函数的关联,第一个按钮我们直接在设计器中实现其关联;第二个按钮我们自己写了槽函数语句,其实图形的设计与直接写代码效果是一样的。 这个程序里我们实现了两类窗口打开的方式,一个是自身消失而后打开另一个窗口,一个是打开另一个窗口而自身不消失。可以看到他们实现的方法是不同的。 二.信号与槽 实例:按钮与显示。 1.建立新项目,qt 控件项目 命名:btntxt,保存路径:/home/cwd/qt. 下一步,取消勾选“影子构建”和“qt模拟器” 连续“下一步”,完成。 这是会出现一个工程项目:btntxt 双击“界面文件:mainwindow.ui”进入“界面设计”。 在界面设计器中,拖拽控件组“button”中的“pushbutton”,放置窗体中,放置两个。第一个button其控件上的文字改为show,第二个改为close。 拖拽控件组“input windows”中的控件“textedit”到窗体中,布局如下: 建立信号与槽连接 此时第一个button其名字是“pushbutton”,第二个是“pushbutton_2”,这是缺省命名,你可以修改。文本编辑框叫“textedit”。 鼠标右击第一个button,在右键菜单中选择“转到槽”,然后在弹出窗口中选择信号为“clicked()”。 这时,主窗口mainwindow.cpp中出现一个新的代码段,函数名为“on_pushbuttonon_clicked()”,属于“mainwindow”类。 见下图: 可以在其中键入代码: ui - textedit -settext(“from the people,by the people,for the people”) 注意,尽量采用“补齐”的方式输入,可以用来检错,也可以帮助你熟悉命令。 输入完毕可以尝试运行一次,点击左侧栏绿色的运行图标,每次运行都全面地进行了
原创力文档


文档评论(0)