Пользовательская форма окна wxWidgets (PNG)

Я использую привязки wxPython для wxWidgets. Можно ли создать нестандартное окно из PNG-изображения и в виде альфа-канала? Взгляните на заставку VS2010, чтобы понять, что я имею в виду:

альтернативный текст

Выделенные зоны (закругленный угол и тень) не четкие, они используют альфа-канал, чтобы выглядеть гладкими.

Обновление: я хочу не только пользовательскую форму, но и гладкую пользовательскую форму

Обновление 2: похоже, что нет способа сделать это с помощью wx:(

3 ответа

Посмотрите на shapedwindow из документов и демоверсий wxpython

Если вам нужен экран-заставка, вы можете использовать класс AdvancedSplash, который поддерживает маскирование.

Насколько я знаю, есть по крайней мере один способ сделать это:

  1. Создайте всплывающее окно, но не показывайте его (просто создайте и запустите). Это окно должно быть без полей и иметь некоторые поля для будущих градиентов теней.
  2. Градус часть подстилающего окна к изображению.
  3. Показать заставку. Нарисуйте сохраненное изображение, нарисуйте тени и заставку со всеми прозрачными материалами, которые вам нужны.

Однако этот метод подходит только для заставок:(

Другие вопросы по тегам