读书人

pyqt:窗体大小与格局

发布时间: 2012-12-31 11:57:52 作者: rapoo

pyqt:窗体大小与布局
本帖最后由 redstoneleo 于 2012-09-20 17:37:51 编辑


import sys
from PySide import QtGui, QtCore

class Example(QtGui.QWidget):

def __init__(self):
super(Example, self).__init__()

self.initUI()

def initUI(self):

self.lbl = QtGui.QLabel(self)
qle = QtGui.QLineEdit(self)

qle.move(60, 100)
self.lbl.move(60, 40)

qle.textChanged[str].connect(self.onChanged)

self.setGeometry(300, 300, 280, 170)
self.setWindowTitle('QtGui.QLineEdit')
self.show()

def onChanged(self, text):

self.lbl.setText(text)
self.lbl.adjustSize()


def main():

app = QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())


if __name__ == '__main__':
main()



1.这段代码中有两行代码都影响了窗体的大小。

self.setGeometry(300, 300, 280, 170)
self.lbl.adjustSize()
请问哪一行代码更具有决定性意义?

2. sys.exit(app.exec_())这句代码中的sys.exit()起什么作用啊?他是可有可无的吗?(因为我把sys.exit(app.exec_())替换为app.exec_()后,程序同样正常运行,而且还不会出现
如下错误(python shell)的提示



Traceback (most recent call last):
File "E:\学习资料\编程语言\Python\pyside\pyside_test.py", line 26, in <module>
sys.exit(app.exec_())
SystemExit: 0

[解决办法]
引用:
引用:
self.setGeometry(300, 300, 280, 170)#显式的确定窗体的大小
self.lbl.adjustSize() #根据窗体的内容动态的改变窗体大小


这是不是说明
self.setGeometry(300, 300, 280, 170)
实际上根本就没有表现出其作用来呢?

这里可以看做是对一个窗体进行一个固定的大小初始化

读书人网 >perl python

热点推荐