Я пытаюсь создать приложение для управления яркостью в Ubuntu 13.04. Идея состоит в том, чтобы сделать значок и слайдер в трее, который появляется при нажатии значка. Проблема в том, что меню лотка содержит только пустой элемент. Вот блок кода, который работает, но не правильно (это показывает ползунок только при нажатии пункт Пустое меню):Сделать QSlider работать в QSystemTrayIcon
cntrl::cntrl(QWidget *parent):
QWidget(parent)
{
value = 2500;
slider = new QSlider (Qt::Horizontal,this);
slider->setValue(2500);
slider -> setRange(0,maxBrightness);
slider -> setSingleStep(50);
slider->setPageStep(50);
tray = new QSystemTrayIcon (this);
menu = new QMenu (this);
act = new QWidgetAction (this);
act->setDefaultWidget(slider);
menu->addAction(act);
tray->setContextMenu(menu);
tray->setIcon(QIcon(":/brightness2.png"));
tray->show();
connect (slider,SIGNAL(valueChanged(int)),this,SLOT(changeBrightness(int)));
connect(act,SIGNAL(triggered()),menu,SLOT(show())); //trying to make it work somehow
}
Что случилось?