В общем, я обнаружил, что вы можете установить шрифт только до создания виджета, иначе шрифт не изменится, но мне нужно изменить шрифт после создания элемента, как я могу это сделать?
void MyMain::makeBtnPanel()
{
btnPanel = new wxPanel(this, wxID_ANY);
wxGridSizer* grid = new wxGridSizer(5, 4, 2, 2);
// here is hidden code that is adding widgets to grid
btnPanel->SetSizer(grid);
sizer->Add(btnPanel, 5, wxEXPAND);
}
void MyMain::styleBtns()
{
wxFont mainBtnFont(
16,
wxFONTFAMILY_DEFAULT,
wxFONTSTYLE_NORMAL,
wxFONTWEIGHT_EXTRALIGHT
);
btnPanel->SetFont(mainBtnFont);
}
* 1003 Функция *
styleBtns
не работает, но если я установил шрифт сразу после создания
btnPanel
(во 2-й строке функции
makeBtnPanel
), шрифт будет установлен.
конструктор класса:
MyMain::MyMain()
: wxFrame(
NULL,
wxID_ANY,
"Calculator",
wxDefaultPosition,
wxSize(322, 392)
)
{
sizer = new wxBoxSizer(wxVERTICAL);
SetSizer(sizer);
makeDisplayPanel();
makeBtnPanel();
styleBtns();
setupMainFrame();
}