84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
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对象来获取,所以即使是拖拽上去的控件,也可以由代码动态地控制它们。