Окно переполняется виджет в wxWidgets - PullRequest
1 голос
/ 20 января 2009

Я ищу способ реализовать этот дизайн в wxPython для Linux ...
У меня есть панель инструментов с кнопкой, когда кнопка нажата, должно появиться всплывающее окно, имитирующее расширение панели инструментов (например, меню), и в этом всплывающем окне должны отображаться два столбца переключателей (скажем, 2x5) и текстовое поле. , Моя главная проблема заключается в том, что панель инструментов имеет небольшую высоту, поэтому всплывающее окно должно выходить за границы области окна / клиента.

Я подумал о двух возможных реализациях:

  • с помощью wxMenu, поскольку меню можно нарисовать за пределами клиентской области. Боюсь, что возможности макета недостаточно гибки для моей цели
  • с использованием фасонной рамки. Нажатие кнопки приведет к изменению формы рамки и отображению необходимых виджетов в соответствии с запросом.

Мой вопрос: я что-то упускаю / что-то не так? :) Это вообще выполнимо?

1 Ответ

1 голос
/ 20 января 2009

Использование меню запрещено, поскольку wxWidgets не может помещать виджеты в меню. Использование фигурной рамки было бы в принципе возможным, но проблема в том, чтобы получить положение кнопки, на которую вы нажали, чтобы окно отображалось в правильном положении. Я пытался сделать это тогда, но не повезло (в C ++ wxWidgets). Может быть, ситуация изменилась между тем, удачи.

Вы также можете попробовать wxComboCtrl, который позволяет вам иметь собственное всплывающее окно. Затем можно отобразить окна радио и элемент управления вводом.

...