C ++ wxWidgets: изменить шрифт Sizer - PullRequest
1 голос
/ 18 июня 2020

Недавно я начал изучать C ++ и wxWidgets, а теперь создаю программу-калькулятор. У меня есть калибровщик сетки с кнопками, и я хочу знать, можно ли изменить шрифт всего сайзера вместо изменения шрифта каждой отдельной кнопки?

Ответы [ 2 ]

2 голосов
/ 18 июня 2020

Сайзеры не являются windows, поэтому у них нет шрифта, поэтому нет, вы не можете просто вызвать SetFont() в сайзере. Вы можете перебирать все элементы измерителя и вызывать SetFont() для каждого элемента, который является окном. Или, что несколько менее эффективно (потому что вы «теряете» окно), но более удобно, вы можете сделать все свои кнопки дочерними элементами wxPanel и связать существующий измеритель размера с этой панелью. Тогда вы сможете вызвать SetFont() на панели, которая является окном, и таким образом по умолчанию распространит изменение шрифта на все его дочерние элементы.

0 голосов
/ 18 июня 2020

Другим решением может быть создание дочернего элемента wxButton, который будет принимать номер в конструкторе и изменять там шрифт.

...