I'm trying to copy the Qt systray example here: http://doc.trolltech.com/4.3/desktop-systray.html
Things seem to be working except that the QSystemTrayIcon object is not sending an activate signal.
Here's my mainwindow.cpp code:
#include <QtGui>
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
QMessageBox::information(0, tr("Systray"),
tr("Loaded."));
createTrayIcon();
connect(trayIcon,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),this,
SLOT(iconActivated(QSystemTrayIcon::ActivationReason)));
trayIcon->show();
}
void MainWindow::createTrayIcon()
{
trayIcon = new QSystemTrayIcon(this);
}
void MainWindow::iconActivated(QSystemTrayIcon::ActivationReason reason)
{
QMessageBox::information(0, tr("Systray"),
tr("Testing"));
}
void MainWindow::messageClicked()
{
QMessageBox::information(0, tr("Systray"),
tr("Sorry, I already gave what help I could.\n"
"Maybe you should try asking a human?"));
}
MainWindow::~MainWindow()
{
delete ui;
}
I'm using Qt 4.5.2 on Windows XP SP2. Could this be an issue with Windows XP? Or am I doing something wrong? I don't have a QIcon set for the trayIcon. Is that a problem?
Any help would be appreciated.
Thanks! Jieren