Как повторно открыть панель при закрытии фрейма

#c #wxwidgets

#c #wxwidgets

Вопрос:

Я создаю графический интерфейс, в котором есть главное окно, которое является wxFrame, в главном окне есть кнопка. В главном классе window у меня есть члены, которые представляют собой wxMiniFrame и wxPanel.

Сценарий заключается в том, что когда я нажимаю кнопку, будет создан новый wxMiniFrame, и панель будет отображена в wxMiniFrame, когда мини-фрейм закрыт, я хочу, чтобы wxPanel была отображена в главном окне.

Есть ли какой-либо способ обнаружить, что мини-фрейм закрыт, чтобы я мог повторно открыть панель?

Заранее спасибо!

Комментарии:

1. У wxMiniFrame есть кнопка закрытия в правом верхнем углу, когда я нажимаю на нее, мини-фрейм будет уничтожен, а wxPanel также будет уничтожен, поскольку его текущий родительский элемент является мини-фреймом, но я хочу сохранить панель. Можно ли скрыть мини-фрейм вместо того, чтобы закрывать его, когда я нажимаю эту кнопку?

Ответ №1:

Обработка обычного wxEVT_CLOSE_WINDOW должна работать нормально и для мини-фреймов.

В любом случае вы всегда можете сделать это из своего wxMiniFrame производного класса dtor.

Комментарии:

1. Можно ли скрыть мини-фрейм вместо того, чтобы закрывать его, когда я нажимаю кнопку закрытия в правом верхнем углу?

2. У меня есть еще одна проблема: когда создается мини-фрейм, он всегда отображается сверху, даже если я нажимаю на основной фрейм.