程序员指定每个控件的位置和大小(以像素为单位)。
绝对定位有以下限制:
- 如果我们调整窗口,控件的大小和位置不会改变
- 在各种平台上应用程序看起来会不一样
- 如果改变字体,我们的应用程序的布局就会改变
- 如果我们决定改变我们的布局,我们必须完全重做我们的布局
代码实例:
1 #!/usr/bin/python3 2 # -*- coding: utf-8 -*- 3 4 """ 5 ZetCode PyQt5 tutorial 6 7 This example shows three labels on a window 8 using absolute positioning. 9 10 Author: Jan Bodnar 11 Website: zetcode.com 12 Last edited: August 2017 13 """ 14 15 import sys 16 from PyQt5.QtWidgets import QWidget, QLabel, QApplication 17 18 19 class Example(QWidget): 20 21 def __init__(self): 22 super().__init__() 23 24 self.initUI() 25 26 def initUI(self): 27 28 lbl1 = QLabel('Zetcode', self) 29 lbl1.move(15, 10) 30 31 lbl2 = QLabel('tutorials', self) 32 lbl2.move(35, 40) 33 34 lbl3 = QLabel('for programmers', self) 35 lbl3.move(55, 70) 36 37 self.setGeometry(300, 300, 250, 150) 38 self.setWindowTitle('Absolute') 39 self.show() 40 41 42 if __name__ == '__main__': 43 44 app = QApplication(sys.argv) 45 ex = Example() 46 sys.exit(app.exec_())