#wxwidgets
#wxwidgets
Вопрос:
Знаете ли вы, почему конструктор wxPanel имеет windowID по умолчанию, а конструктор wxBookCtrl по умолчанию требует явного windowID? Я имею в виду, что это не согласуется с тем, как вы создаете объект управления в wxWidgets. Например
wxPanel* panel = new wxPanel(parent)
но
wxBookCtrl* book = new wxBookCtrl(parent, wxID_ANY)
Есть ли какие-либо преимущества или требования к выполнению этого?
Спасибо.
Ответ №1:
Это все еще несколько непротиворечиво в том смысле, что запись new wxPanel(parent, wxID_ANY)
тоже работает, но wxPanel
является исключением, позволяющим полностью исключить wxID_ANY
. Это связано с тем, что вы в принципе никогда не хотите привязываться к событиям панели по ее идентификатору, поэтому вас никогда не волнует ее значение, в то время как это более полезно для других элементов управления, включая wxBookCtrl
.