Как упомянуто в EVT_SIZE
описании документации wxFrame , он изменяет размер своего только дочернего элемента, чтобы заполнить всю клиентскую область по умолчанию. Это то, что очень удобно в обычном случае, когда у вас есть wxPanel
как единственный дочерний элемент кадра, но, очевидно, не так много, если вы хотите иметь только радио-блок.
Чтобы это исправить определите свой собственный обработчик wxEVT_SIZE
, ничего не делая. Или, может быть, даже проще, просто создайте другое окно (которое может быть wxStaticText
без метки, что делает его фактически невидимым).
Конечно, использование абсолютного положения и размеров не сработает в любом случае, потому что из различий между платформами отображает DPI et c, поэтому настоятельно делать не рекомендуется. Используйте размеры для макета, по крайней мере, используйте диалоговые единицы вместо значений в пикселях.