Вопрос

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

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

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

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

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

Это было полезно?

Решение

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top