Установите размер wx.GridBagSizer динамически - PullRequest
1 голос
/ 06 марта 2009

Я создаю приложение, в которое перетаскиваю виджеты кнопок на панель. Мне бы хотелось, чтобы на панели была видимая сетка, куда я перетаскивал виджеты, чтобы виджеты были выровнены по сетке.

Полагаю, что создать сетку с квадратами 15x15 пикселей с помощью GridBagSizer (поскольку виджеты будут распределены между несколькими ячейками) несложно, но как можно сделать количество квадратов динамически в соответствии с размером панели

Нужно ли рассчитывать, сколько квадратов мне нужно, чтобы заполнить панель при инициализации и при каждом изменении размера?

Использование python и wxpython, кстати.

Эрджан Петтерсен

1 Ответ

1 голос
/ 06 марта 2009

Для этого вообще не пользуйтесь сайзером. Просто расположите кнопки сами, с той координатой, которая вам нравится. (используя wxWindow :: SetSize () ).

(Смысл sizer заключается в том, что кнопки будут перемещаться и / или изменяться в размерах при изменении размера окна. Так как вы не хотите такого поведения, вам не следует использовать sizer. )

...