我正在尝试在 Qt 中实现某种音量滑块。我在上面添加了QWidget
一个QSlider
。它对我来说很好......但是!QWidget
显示在屏幕中心。但我需要它在托盘图标的顶部。
有人知道该怎么做吗?
代码:
VolumeSlider::VolumSlider(QWidget *parent) : QWidget(parent)
{
setWindowFlags(Qt::Popup);
resize(20, 150);
slider = new QSlider(Qt::Vertical, this);
slider->setRange(0, 100);
slider->setSingleStep(5);
slider->setPageStep(10);
slider->setValue(currentVolume);
slider->resize(20, 150);
}
我在中间点击时显示QWidget
witha :QSlider
connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
this, SLOT(trayIconClicked(QSystemTrayIcon::ActivationReason)));
插槽实现是:
void VolumeSlider::trayIconClicked(QSystemTrayIcon::ActivationReason reason)
{
if (reason == QSystemTrayIcon::MiddleClick) {
show();
}
}
感谢您的关注!
此致!