84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
Qt中的控件可以使用代码添加也可以通过界面编辑器手工拖拽,问题是那些拖拽的控件不能体现在代码里吗?我想针对控件做一些微调(譬如全屏窗口时,某个label依然居中)。这个好像只能通过代码修改布局吧。遇到这种问题时,怎么处理呢?还是你们都是用代码添加控件的?
闭关修行中......
(很久没用 Qt 了,当时用的是 Qt4, 不过变化不大)
UI 设计器产出的是 .ui 文件,.ui 文件会在编译的时候被 uic 编译成 ui_WidgetXXOO.h, 里面定义了一个 Ui_WidgetXXOO 的类,里面包含了设计器里通过拖拽添加的所有控件对应变量,然后还有个 setupUi 函数,用来完成你在设计器中对控件做的修改。
回到 WidgetXXOO 类,它会包含这个 ui_WidgetXXOO.h, 然后在构造函数以 this 为参数调用 Ui_WidgetXXOO::setupUi, 来加载你通过设计器来添加的控件,和做的修改。
以上的 UI 设计器的工作原理,你可以用 Qt Creator 创建一个默认项目,就可以看到我上面提到的那些代码。它是一个透明的工作过程,你如果需要自己来写代码,修改控件,只需要在 WidgetXXOO 的构造函数中,紧接着 Ui_WidgetXXOO::setupUi, 来写你要加的代码就可以了。
在 Qt 开发中,UI 设计器是一个非常好用的东西,通常能用 UI 设计器的都是直接拖,然后在此基础上自己写代码完成那些通过 UI 设计器完成不了的工作。
界面编辑器实际上编辑的是.ui文件,你可以直接用文本编辑器打开.ui文件进行编辑。这些拖拽的控件可以通过ui对象来获取,所以即使是拖拽上去的控件,也可以由代码动态地控制它们。
(很久没用 Qt 了,当时用的是 Qt4, 不过变化不大)
UI 设计器产出的是 .ui 文件,.ui 文件会在编译的时候被 uic 编译成 ui_WidgetXXOO.h, 里面定义了一个 Ui_WidgetXXOO 的类,里面包含了设计器里通过拖拽添加的所有控件对应变量,然后还有个 setupUi 函数,用来完成你在设计器中对控件做的修改。
回到 WidgetXXOO 类,它会包含这个 ui_WidgetXXOO.h, 然后在构造函数以 this 为参数调用 Ui_WidgetXXOO::setupUi, 来加载你通过设计器来添加的控件,和做的修改。
以上的 UI 设计器的工作原理,你可以用 Qt Creator 创建一个默认项目,就可以看到我上面提到的那些代码。它是一个透明的工作过程,你如果需要自己来写代码,修改控件,只需要在 WidgetXXOO 的构造函数中,紧接着 Ui_WidgetXXOO::setupUi, 来写你要加的代码就可以了。
在 Qt 开发中,UI 设计器是一个非常好用的东西,通常能用 UI 设计器的都是直接拖,然后在此基础上自己写代码完成那些通过 UI 设计器完成不了的工作。
界面编辑器实际上编辑的是.ui文件,你可以直接用文本编辑器打开.ui文件进行编辑。这些拖拽的控件可以通过ui对象来获取,所以即使是拖拽上去的控件,也可以由代码动态地控制它们。