Ответы пользователя по тегу PySide
  • Как сделать фон полупрозрачным и размытым в меню трея?

    @dim5x
    ЗИ, ИБ. Помогли? Поблагодарите. Отметьте ответом.
    import sys
    from PySide6.QtWidgets import QApplication, QSystemTrayIcon, QMenu
    from PySide6.QtGui import QIcon, QAction
    from PySide6.QtCore import Qt
    
    
    def create_tray_icon():
        app = QApplication(sys.argv)
    
        tray_icon = QSystemTrayIcon(QIcon("free-icon-mushroom-17845555.png"), app)
    
        # Создаем меню
        tray_menu = QMenu()
        tray_menu.setWindowFlags(tray_menu.windowFlags() | Qt.FramelessWindowHint | Qt.NoDropShadowWindowHint)
        tray_menu.setAttribute(Qt.WA_TranslucentBackground)
    
        # Настройка стиля меню
        tray_menu.setStyleSheet("""
            QMenu {
                background-color: rgba(255, 255, 255, 150);
                border: 1px solid rgba(0, 0, 0, 50);
            }
            QMenu::item {
                padding: 5px 30px;
                margin: 2px;
                border-radius: 5px;
            }
            QMenu::item:selected {
                background-color: rgba(100, 100, 100, 100);  /* Менее яркое выделение */
                color: black;  /* Цвет текста при выделении */
            }
        """)
    
        # Создаем действия
        action_show_message = QAction("Показать сообщение")
        action_quit = QAction("Выход")
    
        tray_menu.addAction(action_show_message)
        tray_menu.addSeparator()
        tray_menu.addAction(action_quit)
    
        action_show_message.triggered.connect(lambda: tray_icon.showMessage("Заголовок", "Это сообщение из трея"))
        action_quit.triggered.connect(app.quit)
    
        tray_icon.setContextMenu(tray_menu)
        tray_icon.show()
    
        sys.exit(app.exec())
    
    
    if __name__ == "__main__":
        create_tray_icon()


    672dc9e2a21c3749067411.png
    Ответ написан