Я помогаю с поддержкой Windows для приложения PyGTK, которое отображается как апплет на панели задач, но я не так силен в липких вещах GTK+...
У нас это так, когда вы щелкаете левой кнопкой мыши по значку в системном трее, окно появляется прямо рядом со значком в трее, независимо от того, где находится ваш системный лоток — и в Linux это прекрасно работает, используя результаты gtk.StatusIcon.get_geometry()
для расчета размера и положения.
Конечно, документы для gtk.StatusIcon.get_geometry() указывают, что «некоторые платформы не предоставляют эту информацию» — и это включает MS Windows, так как в результате я получаю NoneType.
Я могу сделать предположение и расположить окно в правом нижнем углу экрана, на 30 пикселей вверх от нижнего края, так как это поймает большинство пользователей Windows, которые не перемещали панель задач. Но для тех, у кого есть, все выглядит неправильно.
Итак, есть ли удобный для Windows способ получить положение значка на панели задач, чтобы я мог разместить свое окно там?
Обратите внимание: я уже использую gtk_menu_popup()
с gtk_status_icon_position_menu
для всплывающего меню, которое работает правильно.
Но я пытаюсь позиционировать отдельное окно gtk.Window, которое не примет gtk_status_icon_position_menu (потому что это не меню).
Любые другие идеи будут оценены...