Как можно программу полностью спрятать в трей, чтобы не висела иконка в панели задач, т.к. мини-программа будет в фоне, и нужно чтобы не сильно мешала.
p.s. + есть такая проблема, что иконка не отображается в трее. Гуглил, но все в основном 2007 года, и толком, что такая трабла и у линухи бывает не нашел. Есть у кого-то информация по этому поводу?
Ответы (2 шт):
На Qt/C++ я использовал this->hide() чтобы убрать окно с панели задач и this->show() чтобы вернуть на панель задач.
А для добавления трея
//Создаем Action’ы для меню QAction quitAction = new QAction(tr(«), this); connect(quitAction, SIGNAL(triggered()), qApp, SLOT(quit())); //Создаем меню и добавляем Action в него QMenu trayIconMenu = new QMenu(this); trayIconMenu->addAction(quitAction); //Загружаем иконку QIcon icon; icon.addFile(QString::fromUtf8(«:/image.ico»), QSize(), QIcon::Normal, QIcon::Off); //Создаем трей QSystemTrayIcon trayIcon = new QSystemTrayIcon(this); trayIcon->setContextMenu(trayIconMenu); trayIcon->setIcon(icon); trayIcon->setToolTip(tr(«Текст в трее»)); trayIcon->show();
Извиняюсь что не на Python, но думаю, что на нем будет примерно так же.
Скрыть системные значки на панели задач Windows 10
Скрыть по нажатию на крестик
def closeEvent(self, event): if self.check_box.isChecked(): event.ignore() self.hide() self.tray_icon.showMessage( «Tray Program», «Application was minimized to Tray», QSystemTrayIcon.Information, 2000 )
Полный код самого простого примера
import sys from PyQt5.QtWidgets import ( QApplication, QMainWindow, QLabel, QGridLayout, QWidget, QCheckBox, QSystemTrayIcon, QSpacerItem, QSizePolicy, QMenu, QAction, QStyle, qApp) from PyQt5.QtCore import QSize class MainWindow(QMainWindow): «»» Сheckbox and system tray icons. Will initialize in the constructor. «»» check_box = None tray_icon = None # Override the class constructor def __init__(self): # Be sure to call the super class method QMainWindow.__init__(self) self.setMinimumSize(QSize(480, 80)) # Set sizes self.setWindowTitle(«System Tray Application») # Set a title # Create a central widget central_widget = QWidget(self) # Set the central widget self.setCentralWidget(central_widget) grid_layout = QGridLayout(self) # Create a QGridLayout # Set the layout into the central widget central_widget.setLayout(grid_layout) grid_layout.addWidget( QLabel(«Application, which can minimize to Tray», self), 0, 0) # Add a checkbox, which will depend on the behavior of the program when the window is closed self.check_box = QCheckBox(‘Minimize to Tray’) grid_layout.addWidget(self.check_box, 1, 0) grid_layout.addItem(QSpacerItem( 0, 0, QSizePolicy.Expanding, QSizePolicy.Expanding), 2, 0) # Init QSystemTrayIcon self.tray_icon = QSystemTrayIcon(self) self.tray_icon.setIcon( self.style().standardIcon(QStyle.SP_ComputerIcon)) »’ Define and add steps to work with the system tray icon show — show window hide — hide window exit — exit from application »’ show_action = QAction(«Show», self) quit_action = QAction(«Exit», self) hide_action = QAction(«Hide», self) show_action.triggered.connect(self.show) hide_action.triggered.connect(self.hide) quit_action.triggered.connect(qApp.quit) tray_menu = QMenu() tray_menu.addAction(show_action) tray_menu.addAction(hide_action) tray_menu.addAction(quit_action) self.tray_icon.setContextMenu(tray_menu) self.tray_icon.show() # Override closeEvent, to intercept the window closing event # The window will be closed only if there is no check mark in the check box def closeEvent(self, event): if self.check_box.isChecked(): event.ignore() self.hide() self.tray_icon.showMessage( «Tray Program», «Application was minimized to Tray», QSystemTrayIcon.Information, 2000 ) if __name__ == «__main__»: app = QApplication(sys.argv) mw = MainWindow() mw.show() sys.exit(app.exec())
Источник: husl.ru
Как убрать программу в трей без отображения в панели задач
Представим, что у вас есть программа, которая вам нужна, но вы не хотите, чтобы она так сильно занимала место на вашей панели задач. Есть несколько способов, как вы можете убрать программу в трей без отображения в панели задач.
Во-первых, вы можете использовать специальные программы, которые делают это за вас. Одна из таких программ, которая широко используется в Windows, называется TrayIt!. Эта программа имеет множество функций, но ее главная функция — это убрать программу в трей без отображения в панели задач.
TrayIt! легко устанавливается и быстро настраивается. Как только она установлена, вы можете щелкнуть правой кнопкой мыши по любому окну, которое вы хотите убрать в трей без отображения в панели задач, а затем выбрать опцию «TrayIt!». Программа мгновенно скрывается в трей и больше не будет отображаться на панели задач.
Некоторые пользователи также предпочитают использовать более продвинутые программы, например, которые позволяют устанавливать определенные горячие клавиши для того чтобы перемещать программу в трей или на панель задач.
Второй способ, который многие пользователи предпочитают, — это редактирование реестра. Однако, прежде чем продолжать, нам необходимо предоставить важное предупреждение. Неправильное редактирование реестра может привести к неотвратимым проблемам на вашем компьютере. Так что, если вы никогда не редактировали реестр раньше, вам следует почитать об этом еще до начала подобных манипуляций.
Чтобы убрать программу в трей без отображения в панели задач с помощью редактирования реестра, вам необходимо открыть редактор реестра. Щелкните кнопкой «Пуск», выберите «Выполнить» и давайте наберем regedit затем нажмите клавишу Enter. Откроется редактор реестра. (Обратите внимание, что вам может потребоваться ввести Пароль администратора, чтобы получить доступ к редактору реестра.)
Сначала откройте ветку HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerTrayNotify и найдите ключ с названием «IconStreams». Щелкните на этом ключе правой кнопкой мыши и выберите «Удалить». Затем найдите ключ с названием «PastIconsStream» и удалите этот ключ также.
Теперь вы должны перезагрузить компьютер. После перезагрузки вам нужно зайти в «Панель управления», затем выбрать «Приложения до запуска» и выключить программу, которую вы хотели бы убрать в трей. Если эта программа стартует с вашим компьютером, она также должна быть выключена в автозапуске.
После прохождения всего этого длинного пути вы убрали нужную вам программу в трей без отображения в панели задач и можете продолжить со своей работой. Однако, подобные манипуляции в реестре не рекомендуется выполнять часто и необходимо следить за стабильностью вашей системы, особенно после манипуляций с реестром.
Похожие записи:
- Python and pystray — как сворачивать программу в трей на Windows 11?
- Как добавить новые иконки в системный трей Windows?
- Как отображать системное трей в Delphi?
- Как вытащить форму из области уведомление(трей)
- Можно ли спрятать JavaFX приложение в трей?
Источник: qaa-engineer.ru
Как убрать корзину с рабочего стола Windows в трей — MiniBin
Итак, воздушная компьютерная программа MiniBin не только уберёт корзину в системный трей, но и добавит индикацию постепенного заполнения её (стандартная корзина может быть только полной или пустой), покажет размер цифрового мусора с точностью до последнего байта. Ещё она имеет большое количество комплектов иконок для корзинки в трее, аж 35 штук!
С большим трудом нашёл англоязычный официальный сайт производителя, где доступна MiniBin 6.6…, но во-первых — она на английском языке, а во-вторых — на сайте слегка запутанная навигация, добраться до ссылки на скачивание программы не легко.
В конце этой статьи дам ссылку на версию MiniBin 3.8.3.0 с русификатором (всего 100 кб) — она практически ничем не отличается от шестой версии, даже лучше.
Установка и русификация MiniBin
Описываю процесс установки и русификации MiniBin 3.8.3.0. Кликаем на ярлык в скачанной папке…
…и всю дорогу тыкаем на «Next» до этого окна…
Тут снимаем галочку с «Run…» и смело жмём на «Finish».
Возвращаемся в скачанную папку и копируем файлик с шестерёнкой…
…в папку с уже установленной программой…
Соглашаемся на замену…
Вот и всё — запускаем полностью русифицированную MiniBin 3.8.3.0…
В настройках программы сможете назначить вид корзины в трее и галочками включить или отключить некоторые функции.
Теперь в трее, при наведении курсора на корзинку можно увидеть размер мусора…
…а двойным кликом по ней — очистить.
Тыком правой кнопки мышки по корзинке вызовите контекстное меню из которого можно открыть корзину или перейти в настройки MiniBin.
Скачать MiniBin
Чистая, быстрая и бесплатная ссылка…
Предназначение: | Бесплатная программа позволяющая убрать корзину с рабочего стола Windows в трей |
Название программы: | MiniBin |
Производитель (автор): | Mike Edward |
Статус: | Бесплатно |
Категория: | Интерфейс |
Размер инсталлятора (архива): | 100 кб |
Поддержка ОС: | Windows XP,7,8,10 |
Язык интерфейса: | Английский, Русский… |
Безопасность: | Вирусов нет |
Похожие программы: | — |
Ссылка на инсталлятор/сайт: | Скачать/Перейти |
В сети много ссылок на русифицированную версию программы от товарища Kyvaldiys, но… размером целых 16 Мб! Дело в том, что он в установщик зачем-то засунул ещё и программу DAEMON Tools lite. Будьте внимательны!
Теперь знаете, как убрать корзину с рабочего стола Windows в трей. До новых полезных компьютерных программ и интересных приложений для Андроид.
ПОЛЕЗНОЕ ВИДЕО
Источник: optimakomp.ru