Delphi Как использовать TGridPanel - PullRequest
19 голосов
/ 01 октября 2010

Я хочу использовать TGridPanel от Delphi 2009, но не понимаю, как правильно его использовать.

Например, я хочу иметь GridPanel с 4 столбцами, каждый из которых должен иметь каждые 25% ширины GripPanels.

Итак, я поместил GripPanel в форму и добавил 4 элемента ColumnItems. Я присваиваю столбцам элементы SizeStyle ssPercent, и теперь я пытаюсь дать каждому ColummItem значение 25 (ober инспектора объектов). Но по некоторым причинам инспектор объектов не принимает значение 25. Оно автоматически изменяется на что-то вроде «23, 8095238095238». Может ли кто-нибудь объяснить мне вкратце, как использовать эти компоненты? Спасибо!

Ответы [ 2 ]

17 голосов
/ 01 октября 2010

Если вы хотите установить для всех столбцов одно и то же значение, выберите все столбцы в представлении структуры, а затем (при условии, что для SizeStyle уже установлено значение ssPercent) установите для параметра Значение 0 . Это вызовет некоторый автоматизм, который сделает все размеры столбцов равными.

14 голосов
/ 01 октября 2010

Когда для столбца Value установлено значение SizeStyle ssPercent, компонент распределяет новую сумму всех столбцов в стиле ssPercent для доступного общего процента.Например, если у вас есть 4 25% столбцов и вы установили один на 50%, теперь у вас есть 125%.Компонент снова вычисляет значение, чтобы пропорционально распределить общее значение, то есть 50% -> 40% (100 * 50/125).

Чтобы установить значение более чем в один столбец одновременно, во время выполнения выокружите ваш код с помощью GridPanel.ColumnCollection.BeginUpdate и GridPanel.ColumnCollection.EndUpdate.

и во время разработки отредактируйте .dfm напрямую.Нажмите Alt + F12 при просмотре формы в редакторе дизайна, найдите свою GridPanel в текстовом редакторе, отредактируйте значение столбцов и снова нажмите Alt + F12, чтобы вернуться в вид дизайна.

...