看了几篇文章,发现都是用代码实现的,看到了第一篇说是在QtDesigner里面实现的,超级兴奋,但发现它还是用到了按钮组QButtonGroup,但我的版本里找不到ORZ,最后是结合了第二篇文章才实现的。 QPushButton互斥选择 Qt互斥型按钮的应用
拖动几个按钮到里面,使这几个按钮成为一个按钮组。
checkable:是否选中属性,勾选这个,使按钮能够被按下,不会鼠标一离开,按钮就自动弹起。 相关方法: isCheckable() :获取按钮是否被选中。 setCheckable(bool) :设置按钮的选择状态。
autoExclusive:自动排它属性,勾选这个,使同一个Frame里面【有勾选这个属性的】的按钮成为一个互斥(单选)按钮组。 相关方法: autoExclusive():获取。 setAutoExclusive(bool):设置。
设置样式表,是为了让效果更加明显。 ①右键frame,点击“改变样式表”
②编辑样式表,输入css代码。
QPushButton{ color:black; background-color: rgb(255, 255, 255); } QPushButton:hover{ color:white; background-color: rgb(170, 85, 255); } QPushButton:checked{ color:white; background-color: rgb(170, 85, 255); }
1是没有鼠标悬浮在按钮上面,也没有点击; 2是点击按下了; 3是鼠标悬浮在按钮上面。