wxWidgets в C++: как сделать так, чтобы wxGauge появлялся поверх wxGLCanvas

У меня есть приложение на C++ с wxWidgets который загружает плитки из OpenStreetMap и отображает карту внутри wxGLCanvas, Я также сделал индикатор с wxGauge это показывает прогресс загрузки. Карта и индикатор выполнения находятся внутри wxGridBagSizerЯ тоже пробовал с собой wxBoxSizerНо такие же проблемы случаются.

wxGLCanvas map

Теперь я хочу, чтобы индикатор выполнения отображался сверху холста, а не сверху, как сейчас. Просто расположив его с wxPoint отправляет его за холст.

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

Как сделать так, чтобы он отображался сверху или, по крайней мере, сделать так, чтобы холст не расширялся по всем другим моим виджетам?

1 ответ

Чтобы предотвратить исчезновение датчика, когда он находится на той же панели, что и холст, необходимо указать минимальный размер для датчика

Чтобы поместить датчик поверх холста, необходимо поместить датчик в его собственную рамку с родителем основной рамки и стилем wxFRAME_FLOAT_ON_PARENT.

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