StringGrid и FormResize

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: StringGrid и FormResize

Сообщение vitaly_l » 21.12.2017 15:49:27

alexs писал(а):3 раза мышкой нажать, чтобы установить в инспекторе объектов значения свойств - это огород? А писать костыли - это не огород?
Просто зачем писать код, который дублирует штатный функционал?

Наоборот, я 100% поддерживаю Ваш вариант, т.к. он лучше. И даю ему ++100500. И более того в своей программе, я бы СРАЗУ использовал AutoFillColumns + SizePriority, т.к. знал об их существовании. Вот отсюда: viewtopic.php?f=5&t=9677&p=79650&hilit=AutoFillColumns#p79650

Но в этом топике - не обратил внимание на "неправильное" подключение AutoFillColumns (без SizePriority), т.к. вначале увидел другую ошибку у ТС и акцентировался на ней. В общем всё хорошо, всем хорошего дня и настроения!
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: StringGrid и FormResize

Сообщение alexs » 21.12.2017 15:58:15

Тогда и я прошу прощения за недопонимание :-)
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4053
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: StringGrid и FormResize

Сообщение Mushroomer » 21.12.2017 16:36:35

А как бы вы решили такую задачу (к первому вопросу отношения не имеет).
Условно есть StringGrid с 20 колонками. У всех 20 разная ширина.
Нужно чтобы при изменении ширины формы ширина колонок изменялась пропорционально, полностью заполняя ClientWidth.
Когда-то в delphi я делал примерно так (возможно велосипед, поэтому и интересуюсь):
изменилась ширина формы на 8 пикселей - каждой колонке с 0 по 7 добавил по 1 пикселю.
затем форма увеличилась еще на 4 пикселя - каждой колонке с 8 по 11 добавил по 1 пикселю.
Ну и так далее. При уменьшении - вычитание в обратном порядке.

Покрутив AutoFillColumns и SizePriority я не смог добиться работы с колонками у которых SizePriority = 1 чтобы они были разной ширины.
Mushroomer
новенький
 
Сообщения: 20
Зарегистрирован: 04.12.2017 15:07:39

Re: StringGrid и FormResize

Сообщение vitaly_l » 21.12.2017 16:49:05

Mushroomer писал(а):изменилась ширина формы на 8 пикселей - каждой колонке с 0 по 7 добавил по 1 пикселю.
затем форма увеличилась еще на 4 пикселя - каждой колонке с 8 по 11 добавил по 1 пикселю.
Ну и так далее. При уменьшении - вычитание в обратном порядке.

А в процентах не догадались задавать ширину колонок?

Там есть Options - поиграйте с ним, оно Вам вряд ли поможет с этой новой задачей, но будете знать, что умеет грид.
Скорее всего, для решения новой задачи, нужно поменять СтрингГрид на более продвинутый СтрингГрид (или вписать свой код).

.
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: StringGrid и FormResize

Сообщение alexs » 21.12.2017 17:28:07

Штатный грид может либо держать колонки фиксированными, либо заполнять по ширине равномерно. Пропорционального изменения размера нет.
Если есть надобность - то надо писать разработчику грида
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4053
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 31

Рейтинг@Mail.ru