PyQt学习(5)
来源:互联网 发布:java文件路径怎么写 编辑:程序博客网 时间:2024/06/05 11:40
由ui生成代码,然后在主程序中应用
示例代码:
from PyQt4 import QtCore, QtGuifrom PyQt4.QtGui import QDialogtry: _fromUtf8 = QtCore.QString.fromUtf8except AttributeError: def _fromUtf8(s): return stry: _encoding = QtGui.QApplication.UnicodeUTF8 def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig, _encoding)except AttributeError: def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig)class Ui_Dialog(object): def setupUi(self, Dialog): Dialog.setObjectName(_fromUtf8("Dialog")) Dialog.resize(492, 422) self.gridLayout = QtGui.QGridLayout(Dialog) self.gridLayout.setObjectName(_fromUtf8("gridLayout")) self.label1 = QtGui.QLabel(Dialog) self.label1.setObjectName(_fromUtf8("label1")) self.gridLayout.addWidget(self.label1, 0, 0, 1, 1) self.mailLineEdit = QtGui.QLineEdit(Dialog) self.mailLineEdit.setObjectName(_fromUtf8("mailLineEdit")) self.gridLayout.addWidget(self.mailLineEdit, 0, 1, 1, 1) self.label2 = QtGui.QLabel(Dialog) self.label2.setObjectName(_fromUtf8("label2")) self.gridLayout.addWidget(self.label2, 1, 0, 1, 1) self.addressLineEdit = QtGui.QLineEdit(Dialog) self.addressLineEdit.setObjectName(_fromUtf8("addressLineEdit")) self.gridLayout.addWidget(self.addressLineEdit, 1, 1, 1, 1) self.label3 = QtGui.QLabel(Dialog) self.label3.setObjectName(_fromUtf8("label3")) self.gridLayout.addWidget(self.label3, 2, 0, 1, 1) self.codeLineEdit = QtGui.QLineEdit(Dialog) self.codeLineEdit.setObjectName(_fromUtf8("codeLineEdit")) self.gridLayout.addWidget(self.codeLineEdit, 2, 1, 1, 1) self.label4 = QtGui.QLabel(Dialog) self.label4.setObjectName(_fromUtf8("label4")) self.gridLayout.addWidget(self.label4, 3, 0, 1, 1) self.mpLineEdit = QtGui.QLineEdit(Dialog) self.mpLineEdit.setObjectName(_fromUtf8("mpLineEdit")) self.gridLayout.addWidget(self.mpLineEdit, 3, 1, 1, 1) self.receiveCheckBox = QtGui.QCheckBox(Dialog) self.receiveCheckBox.setObjectName(_fromUtf8("receiveCheckBox")) self.gridLayout.addWidget(self.receiveCheckBox, 3, 2, 1, 1) self.label5 = QtGui.QLabel(Dialog) self.label5.setObjectName(_fromUtf8("label5")) self.gridLayout.addWidget(self.label5, 4, 0, 1, 1) self.phoneLineEdit = QtGui.QLineEdit(Dialog) self.phoneLineEdit.setObjectName(_fromUtf8("phoneLineEdit")) self.gridLayout.addWidget(self.phoneLineEdit, 4, 1, 1, 1) self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog) def retranslateUi(self, Dialog): Dialog.setWindowTitle(_translate("Dialog", "Dialog", None)) self.label1.setText(_translate("Dialog", "电子邮件:", None)) self.label2.setText(_translate("Dialog", "联系地址:", None)) self.label3.setText(_translate("Dialog", "邮政编码", None)) self.label4.setText(_translate("Dialog", "移动电话", None)) self.receiveCheckBox.setText(_translate("Dialog", "接收留言", None)) self.label5.setText(_translate("Dialog", "办公电话", None))class Contact(QDialog,Ui_Dialog): def __init__(self,parent=None): super(Contact,self).__init__(parent) self.setupUi(self)if __name__ == "__main__": import sys app = QtGui.QApplication(sys.argv) Dialog = QtGui.QDialog() ui = Contact() ui.setupUi(Dialog) Dialog.show() sys.exit(app.exec_())
参考PyQt学习(4)
#coding=utf-8#文件功能:多继承from PyQt4.QtCore import *from PyQt4.QtGui import *import sysimport baseinfo,conTact,detailUIQTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))class StockDialog(QDialog): def __init__(self,parent=None): super(StockDialog,self).__init__(parent) self.setWindowTitle(self.tr("综合布局实例")) mainSplitter=QSplitter(Qt.Horizontal) mainSplitter.setOpaqueResize(True) self.listWidget=QListWidget(mainSplitter) self.listWidget.insertItem(0,self.tr("个人基本资料")) self.listWidget.insertItem(1,self.tr("联系方式")) self.listWidget.insertItem(2,self.tr("详细信息")) frame= QFrame(mainSplitter) self.stack = QStackedWidget() self.stack.setFrameStyle(QFrame.Panel | QFrame.Raised) baseInfo = baseinfo.BaseInfo() contact =conTact.Contact() detail =detailUI.Detail() self.stack.addWidget(baseInfo) self.stack.addWidget(contact) self.stack.addWidget(detail) amendPushButton = QPushButton(self.tr("修改")) closePushButton = QPushButton(self.tr("关闭")) buttonLayout = QHBoxLayout() buttonLayout.addStretch(1) buttonLayout.addWidget(amendPushButton) buttonLayout.addWidget(closePushButton) mainLayout = QVBoxLayout(frame) mainLayout.setMargin(10) mainLayout.setSpacing(6) mainLayout.addWidget(self.stack) mainLayout.addLayout(buttonLayout) self.connect(self.listWidget, SIGNAL("currentRowChanged(int)"), self.stack, SLOT("setCurrentIndex(int)")) self.connect(closePushButton, SIGNAL("clicked()"), self, SLOT("close()")) layout = QHBoxLayout(self) layout.addWidget(mainSplitter) self.setLayout(layout) self.faderWidget = None self.connect(self.listWidget, SIGNAL("currentItemChanged(QListWidgetItem,QListWidgetItem"),self.changePage) self.connect(self.stack, SIGNAL("currentChanged(int)"), self.fadeInWidget) def changePage(self, current, previous): if not current: current=previous self.stack.setCurrentWidget(current) def fadeInWidget(self,index): self.faderWidget=FaderWidget(self.stack.widget(index)) self.faderWidget.start()class FaderWidget(QWidget): def __init__(self,parent=None): super(FaderWidget,self).__init__(parent) if parent: self.startColor=parent.palette().window().color() else: self.startColor=Qt.white self.currentAlpha = 0 self.duration = 1000 self.timer = QTimer(self) self.connect(self.timer, SIGNAL("timeout()"), self.update) self.setAttribute(Qt.WA_DeleteOnClose) self.resize(parent.size()) def start(self): self.currentAlpha=255 self.timer.start(100) self.show() def paintEvent(self,event): semiTransparentColor = self.startColor semiTransparentColor.setAlpha(self.currentAlpha) painter = QPainter(self) painter.fillRect(self.rect(), semiTransparentColor) self.currentAlpha -= (255 * self.timer.interval() / self.duration) if self.currentAlpha<=0: self.timer.stop() self.close()app=QApplication(sys.argv)main=StockDialog()main.show()app.exec_()
阅读全文
0 0
- PyQt学习(5)
- pyqt学习(5)
- 学习PyQt (1)
- PyQt学习(1)
- PyQt学习(2)
- PyQt学习(3)
- PyQt学习(4)
- PyQt学习(6)
- PyQt挖地雷游戏学习笔记(5)
- PyQT 学习
- pyqt学习
- pyqt学习
- PyQt学习笔记(5)--Main Window
- PyQt的学习(1) 入门
- PyQt的学习(1) 入门
- 材料院项目之pyqt学习(一)——Hello PyQt
- pyQt 例程学习 -1-
- PyQt学习总结
- Vi命令总结
- Windows系统下配置gradle的环境变量的简单方式
- JVM和Dalvik VM
- 裁剪td标签中的长度
- 【数据结构和算法之排序】快速排序
- PyQt学习(5)
- touch结构
- spriing boot 启动报错:Cannot determine embedded database driver class for database type NONE
- cd
- UGUI--拖拽交换
- django 在admin中使用ueditor
- node.js-mongodb插入数据
- 如何用jq实现图片轮播
- 阿里iDST CVPR 2017论文解读:视频衣物精确检索