新建项目
配置项目属性
新建 UI (切换到下图序号 1 的标签, 在下面空白区右键, 选择新建窗体)
点击保存后, eric6 上出现了 first_window.ui
文件, 并且自动打开了 Qt 设计师
.
关于如何使用 Qt 设计师
及 Qt 编程的基础知识参考我另一个系列笔记: 零基础QT入门
这个 first_window.ui
文件是 Qt 专用的, python 不认识它, 但是最终我们是通过 python 来运行程序, 所以需要把 *.ui
文件转化成 python 识别的格式, 方法很简单, 在 *.ui
文件上右键选择 编译窗体
(编译成功/失败会弹框提示).
切换回下图序号 1 的标签, 可以看到多了一个 Ui_first_window.py
文件 (以 Ui 开头, 标明这是从 Qt 的 Ui 文件转换来的)
这个文件有自测代码, 在 Eric 上按 F2 或者 点击下图中的图标, 就能打开刚才新建的窗体了.
if __name__ == "__main__": import sys app = QtGui.QApplication(sys.argv) Dialog = QtGui.QDialog() ui = Ui_Dialog() ui.setupUi(Dialog) Dialog.show() sys.exit(app.exec_())
虽然 Ui_first_window.py
能够被直接运行, 但它本质还是个 ui 层面的文件 (从它的命名就可以看出), 不应该被直接运行, 而从 OOA/D 的角度说, 它是属于 view 层, eric 提供了快捷的方法从 Ui_xxx.py
文件生成 controller 层的代码, 所有的在界面上的事件处理都在这层完成.
首先切换到下图序号 1 的标签, 在 first_window.ui
上右键, 选择 “生成对话框代码”
切换到下图序号 1 的标签, 可以看到又多了个文件
这个文件要做些修改.
去掉一个多余的点,将
from .Ui_first_window import Ui_Form
变成
from Ui_first_window import Ui_Form
添加测试代码:
if __name__ == "__main__": import sys from PyQt4.QtGui import QApplication app = QApplication(sys.argv) dlg = Dialog() dlg.show() sys.exit(app.exec_())
然后就可以按 F2 或者 点击工具栏上的图标, 就能打开刚才新建的窗体了.
☠