Компонента Tgrid.

  • Автор темы maxshuv
  • Дата начала
Статус
Закрыто для дальнейших ответов.
M

maxshuv

Гость
#1
Ещё такой вопрос по компоненте TGrid.
Как сохранить положение колонок? Колонки самопроизвольно сужаются или рисширяются при каждом следующем открытии грида.
 
B

Barmutik

Гость
#2
На старте вычитывайте из реестра состояние колонок и присваивайте параметры .. и соответственно на выходе сохраняте полоение и размеры колонок в реестр..

Что конкретно вызывает сложности?
 
M

maxshuv

Гость
#3
На словах то понятно, что нужно именно так делать, а как будет выглядеть код? (хоть примерно).
С ним возникают проблемы.
 
B

Barmutik

Гость
#4
Хммм.. создаёте объект общения с реестром .. потом в цикле робегаетесь по всем колонкам и сохраняете к примеру ширину колонки и название поля с индексом колонки что бы знать на какое место поставить...

Ну и при загрузке соответственно обратный процесс...
 
M

Maniacosaur

Гость
#5
А сохранять ИМХО лучше не на выходе, а при их изменении
 
S

sdriver

Гость
#6
Сохранять лучше на выходе -- просчитывать каждый раз при малейшем изменении(если измененяешь непрерывно и контролл большой) ИМХО может и притормознуть не по детски. А так на выходе забрасываешь всю бяку по килянию процесов и прочего и создаешь рег настройки -- вроде практично.
 
M

maxshuv

Гость
#7
Я просто сейчас разбираюсь с кодом (не я его писал), там всё что вы говорите есть только с одним местом возникает вопрос:

Columns.Field.DisplayWidth := Round( ColWidths[I + IndicatorOffset] / 6.17 );

Что нужно присвоить вместо этого выражения (Round( ColWidths[I + IndicatorOffset] / 6.17 ))?
И вообще чё за глюк какое-то число 6.17?
 
M

maxshuv

Гость
#8
Всё наконец-то получилось, всем спасибо за подсказки!!!
 
Статус
Закрыто для дальнейших ответов.