最大尺寸、最小尺寸
尺寸策略
sizeHint表示期望尺寸,它对于大多数的控件来说都是只读的。
读取期望尺寸:
例:button的宽度和高度分别为77、32
self.pushButton.sizeHint().width()
self.pushButton.sizeHint().height()
读取最小期望尺寸:
例:button的最小宽度和最小高度分别为77、32
self.pushButton.minimumSizeHint().width()
self.pushButton.minimumSizeHint().height()
水平策略与水平伸展配合使用,例如水平布局的3个button,将它们的水平策略都设置为Expending,第一个的水平伸展设置为2,后两个的水平伸展都设置为1,那么就可以看到一个占一半,另外两个占剩下的一半的布局。
设置控件之间的伙伴关系
设置伙伴关系的目的是想要将两个控件相关联,通过热键的方式。
热键就是在当前窗口,点击对应的按键,就可以转到对应的控件,热键和快捷键不同,它必须在当前窗口下才可以起作用,类似于下图的演示。
首先我设计了一个表单布局,预期按下alt+A可以转换到第一个编辑框,其他的也类似。
那么如何以可视化的方法来设置按键呢?只需要点击“编辑伙伴”,然后鼠标左键拖动一个控件到另外一个控件上面就可以了。
运行以后的效果。
修改控件的Tab顺序
点击edit中的编辑Tab顺序,双击就可以调整顺序了,每点击一下都会降低一个优先级。
信号与槽的设置
信号(signal)与槽(slot)是QT的核心机制,信号可以理解为事件,槽可以理解为事件函数,需要将信号和槽绑定(多对多)。
信号:是由对象或者控件发射出去的消息。例如:按钮的单击事件,当单击按钮时,按钮就会向外部发送单击的消息,这些发送出去的信号需要一些代码来拦截,这些代码就是槽。
槽:本质上是一个函数或方法。