1、控件只能在最小和最大之间进行调整,不能超过范围。
①直接宽高同时设置 window.setMinimumSize(200, 200); window.setMaximumSize(500, 500)
app = QApplication(sys.argv)window = QWidget()window.setWindowTitle("最小最大窗口")window.setMinimumSize(200, 200)window.setMaximumSize(500, 500)window.show()
②分别设置宽和高,设置完成之后在修改,会按最大值作用
# 单独设置宽和高window.setMaximumWidth(600)window.setMinimumWidth(200)# 设置之后resize不起作用,会按最大值起作用window.resize(1000, 1000)
2、QWidget的内容边距,内容区域:指的是标签内部展示的文本内容,整个标签的尺寸大小。
内容区域本身与控件是一样大的,当你设置内容边距,内容区域自然就会变小,又要在内容区域中展示内容,则内容位置也会产生相应改变。内容边距的设置,所以只有文本移动。
import sys
from PyQt5.Qt import *if __name__ == "__main__":app = QApplication(sys.argv)window = QWidget()window.setWindowTitle("内容边距的设定")window.resize(500, 500)label = QLabel(window)label.setText("界面学习")label.resize(300, 300)label.setStyleSheet("background-color:cyan")# 输出内容的矩形print(label.contentsRect())# 分别对应左上右下的间距,设置内容边距label.setContentsMargins(100, 200, 0, 0)print(label.getContentsMargins())window.show()sys.exit(app.exec_())