[Qt]2.3使用Qt Designer创建对话框

2019-06-11 11:11
要使用您刚刚设计的交互,您需要将其放入。
ui文件已添加到项目中。
右键单击“项目名称”,然后单击“添加现有文件”以在对话框中选择它。
我理解用户界面文件。
[对mydialog。
h],代码如下。
第5和第7行:[mydialog。
与该文件对应的头文件称为[ui_mydialog]。
是的,这是真的。
此头文件包含所设计的[MyDialog]对话框的所有定义。
我们定义的类[MyDialog]必须从两个类继承,[QDialog]和[Ui:MyDialog]。
构建此项目后,您可以转到[ui_mydialog。
这个头文件在里面。
此文件的[MyDialog]类继承自[Ui_MyDialog],可以看出[MyDialog]类存在于[Ui]命名空间下。因此,要使用此类:
第15行:这是一种非常方便的写作方式。对于源文件,这个方法是什么用的?

不应解释其他行,现在查看源文件代码。
第6行:使用此指针作为参数调用名为[setupUi]的函数。
该函数是类[Ui:MyDialog]的公共函数。
这用于初始化对话框中设置的各种组件和属性。
实际上,这与初始化我们自己的组件相同。
同时,[setupUi]功能自动连接符合命名格式[on_object_signal]的插槽和相应的[object][signal()]信号。
这意味着slot[on_helloButton_clicked]创建了与[setupUi]函数的连接。
所以我们可以跳过调用函数[connect]来建立连接的步骤。

关于传递给[setupUi]函数的this指针的参数
类[Ui:MyDialog]不是继承自[QDialog]的类,它只保存[Qt Designer]中放置的所有组件。
接下来,使用[setupUi]函数创建这些组件的实例,并设置[Qt Designer]中设置的属性。
[setupUi]此函数所需的参数是QDialog *类型。当函数实例化组件时,这些组件的主对象被指定为此参数。也就是说,这些组件从创建实例开始,属于参数。
它还解释了为什么[setupUi]函数传递了这个指针。
这与将[Qt Designer]中的所有组件及其属性自动移动到类[MyDialog]相同。

是否应该很好地理解其他代码之前的说法?
最后,在使用main函数创建实例[MyDialog]之后,您可以显示它。
结果如下。

此外,组件显示在Qt Designer中。
这是用于创建设计的工具栏。
第一个是相当于QHBoxLayout的水平设计。
第二:垂直设计相当于QVBoxLayout。
第三:使用水平分隔符设计与创建水平QSplitter对象相同。
第四:使用垂直分割器设计与创建垂直QSplitter对象相同。
第五:网格设计相当于QGridLayout。
第六:表面设计中的设计等同于QFormLayout。
第7名:打破设计
8:调整大小

它相对简单,因此您可以自己尝试这些设计方法。
至于QSplitter类,它用于分割窗口,每个子窗口的大小可以任意调整。
您可以编写以下代码:
然后,当你试图跑步时,你会看到,你会知道它是什么。
使用的函数:QSplitter:QSplitter(Qt:Direction)
方向,QWidget * parent = 0)
功能描述:创建分隔符。
方向参数如下:Qt的:
水平和Qt:
垂直方向。指示分隔符的方向。

经过3个月的学习,我完成了“C ++ GUIQt4”这本书。
我最近锻炼了,我很快就会毕业,我会一直很忙。
因此,更新被延迟。
但当然,您每月至少可以保证两篇文章。你必须坚持写博客。
事实上,我对编写Qt没有信心,因为我担心理解这些知识是错误的。如果有错误,拜托,谢谢。


相关阅读