![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Cergey |
![]() ![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 62 Регистрация: 18.10.2008 Пользователь №: 395 Спасибо сказали: 3 раз(а) Репутация: ![]() ![]() ![]() |
Хотел я иконку в трей засунуть, а он мне не находить #include <QSystemTrayIcon>.
Версия QT 4.3.0. Работаю с ним 1.5 лет проблем не было. По поиску в папке QT файл нашел. Помогите кто чем может!!! Стати, а как консольную программу скрыть, как будто она в трей свернулась??? Метода hide или vision в QCoreApplication не нашел!!! Стати работаю на Студии 2005. |
|
|
![]() |
Cergey |
![]()
Сообщение
#2
|
Студент ![]() Группа: Участник Сообщений: 62 Регистрация: 18.10.2008 Пользователь №: 395 Спасибо сказали: 3 раз(а) Репутация: ![]() ![]() ![]() |
CODE // Класс, для помещения сервера в системный трей class ServerSystemTray : public QSystemTrayIcon { Q_OBJECT public: ServerSystemTray(QCoreApplication & a); public slots: void visualServer(QSystemTrayIcon::ActivationReason reason); // Обработка нажатия по трею private: QCoreApplication *server; // Указатель на сервер bool vSer; // Флаг определяющий показан ли сервер (true - показан, false - спрятан) }; ServerSystemTray::ServerSystemTray(QCoreApplication & a) : QSystemTrayIcon() { // Соединяем сигнал нажатия по иконки сервера в трее и его обработчик connect(this, SIGNAL(activated (QSystemTrayIcon::ActivationReason )), this, SLOT(visualServer(QSystemTrayIcon::ActivationReason reason ))); // Обозначаем, что сервер показан vSer = true; // Сохраняем ссылку на сервер server = &a; setIcon(QIcon("icon.bmp")); // Показываем иконку сервера в трее show (); } /* * Функция-обработчик нажатия по иконки в трее * \param reason причина нажатия */ void ServerSystemTray::visualServer(QSystemTrayIcon::ActivationReason reason) { // Если нажатие по иконке произошло левой кнопкой мышы один раз if(reason == QSystemTrayIcon::Trigger) { // Если сервер был показан if(vSer == true) { // То прячем его // Обозначаем что сервер скрыт vSer = false; } else // Если сервер был скрыт { // То показываем его // Обозначаем что сервер показан vSer = true; } } } Вылет на setIcon() но наверное из-за консоли ах ![]() Добавление: В main создаю объект этого класса. |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 14.7.2025, 0:34 |