首页 > 其他 > 详细

Qt设计师与主程序调用方法

时间:2014-03-23 09:15:16      阅读:452      评论:0      收藏:0      [点我收藏+]

本能地对手写代码作UI不感冒。因为UI要作专业设计啊,你用代码写的同事怎么美化?


但是对设计师作的ui文件,又不太会用。勉强套一个代码的样式,对一个ui会用了,有两个代码就又乱了。


rapid gui programing with python and qt第五章,终于有了一个主窗口和子窗口的例子。虽然书上用的代码,我用设计师也做出来了。


先画好两个UI,只布元素,漂亮是美工的事了。

bubuko.com,布布扣bubuko.com,布布扣

这两个图片画好,保存,转py格式,导入主程序中。然后用代码表示为:


import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *
from CHP5.main import Ui_main
from CHP5.setPPD import Ui_setPropertiesDlg




class dialog(QDialog):  #新建类,导入对话框的ui或者说,设计师作的ui类的实例,就这个类的属性
    def __init__(self, parent=None):
        super(dialog, self).__init__(parent)
        self.ui = Ui_setPropertiesDlg()
        self.ui.setupUi(self)




class mytest(QDialog):
    def __init__(self, parent=None):
        super(mytest, self).__init__(parent)
        self.ui = Ui_main()   # ui文件在这里使用,这里用的主窗口。
        self.ui.setupUi(self)
        self.width = 1
        self.beveled = False
        self.style = None


        self.ui.label_2.setText(str(self.width))  # 对主窗口元素作初始化
        self.ui.label_4.setText(str(self.beveled))
        self.ui.label_6.setText(str(self.style))


        self.connect(self.ui.buttonSetup, SIGNAL("clicked()"), self.setUpPen)  # 连接按钮的作用


    def setUpPen(self):  # 定义按钮的方法
        test_dialog = dialog()  # 对话框类的实例化
        if test_dialog.exec_():  #如果执行的话
            self.width = test_dialog.ui.spinBox .value()
            self.beveled = test_dialog.ui.checkBox.checkState()
            self.style = test_dialog.ui.comboBox.currentText()
            self.updateData()  # 更新主窗口数据


    def updateData(self):  #更新数据
        self.ui.label_2.setText(str(self.width))
        self.ui.label_4.setText(str(self.beveled))
        self.ui.label_6.setText(str(self.style))






app = QApplication(sys.argv)
form = mytest()
form.show()
app.exec_()

Qt设计师与主程序调用方法,布布扣,bubuko.com

Qt设计师与主程序调用方法

原文:http://blog.csdn.net/python2014/article/details/21807689

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!