Qt中的图片开关控件
在Qt中,我们可以使用QToolButton类来创建一个带有图片的开关按钮。该控件可以用于切换某个功能的状态,可以显示不同的图像以表示当前状态。
下面是创建一个图片开关按钮的例子代码:
QToolButton *switchButton = new QToolButton(this);
switchButton->setCheckable(true);
switchButton->setChecked(false);
switchButton->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding);
QPixmap pixmapOff(":/icons/off.png");
QPixmap pixmapOn(":/icons/on.png");
switchButton->setIcon(pixmapOff);
switchButton->setIconSize(pixmapOff.rect().size());
connect(switchButton, &QToolButton::clicked, [=]() {
if (switchButton->isChecked()) {
switchButton->setIcon(pixmapOn);
// do something when turned on
} else {
switchButton->setIcon(pixmapOff);