Вниз
Скачать: CL | DM;

Смещение ячеек в TDrawGrid   Найти похожие ветки 

← →
Fr   (2011-03-27 00:02) [0]

На форме лежит TDrawGrid. При создании формы ячейки растягиваются так, чтобы занять всю область грида:

procedure TForm1.FormCreate(Sender: TObject);
begin
 DrawGrid1.DefaultColWidth:=DrawGrid1.Width div DrawGrid1.ColCount;
 DrawGrid1.DefaultRowHeight:=DrawGrid1.Height div DrawGrid1.RowCount;
end;

После запуска "приложения" :) выделяю мышью ячейку крайнего правого столбца или нижней строки и все ячейки вдруг сдвигаются, оставляя по бокам грида пространство без сетки.
Как сделать так, чтобы не было этого сдвига?

http://dl.dropbox.com/u/8204815/Grid_1.jpg  (34,5 КБ)
слева на скриншоте до выделения ячейки, справа - после.


← →
Германн ©   (2011-03-27 00:10) [1]

В расчетах не учтена ширина линий сетки GridLineWidth.


← →
Fr   (2011-03-27 00:20) [2]


> В расчетах не учтена ширина линий сетки GridLineWidth.

Ничего не меняется, если GridLineWidth выставить в 0


← →
Fr   (2011-03-27 00:26) [3]

Точнее, при выставленном GridLineWidth в 0, сетка уже сдвигается только по вертикали. Но надо, чтобы она вся оставалась на месте...


← →
Германн ©   (2011-03-27 00:45) [4]

Так учесть надо было, а не обнулять!
DrawGrid1.DefaultColWidth:=(DrawGrid1.Width - DrawGrid1.ColCount*DrawGrid1.GridLineWidth) div DrawGrid1.ColCount;


← →
Fr   (2011-03-27 10:49) [5]


> Так учесть надо было, а не обнулять!

Так подставьте 0 вместо DrawGrid1.GridLineWidth в
DrawGrid1.DefaultColWidth:=(DrawGrid1.Width - DrawGrid1.ColCount*DrawGrid1.GridLineWidth) div DrawGrid1.ColCount;
и получите на выходе то же самое, что и у меня.

На всякий случай заменил в коде на
 
 DrawGrid1.DefaultColWidth:=(DrawGrid1.Width-DrawGrid1.ColCount*DrawGrid1.GridLineWidth) div DrawGrid1.ColCount;
 DrawGrid1.DefaultRowHeight:=(DrawGrid1.Height-DrawGrid1.RowCount*DrawGrid1.GridLineWidth) div DrawGrid1.RowCount;


Ничего не изменилось - при выборе нижней ячейки вся сетка сдвигается вверх, оставляя под ней пустое место (без ячеек).


← →
_Юрий   (2011-03-27 11:10) [6]

>>DrawGrid1.Width

DrawGrid1.ClientWidth ?


← →
Fr   (2011-03-27 11:12) [7]


> _Юрий   (27.03.11 11:10) [6]

Спасибо! Заработало :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.006 c
15-1300381955
dreamse
2011-03-17 20:12
2011.07.03
Прошу оценить созданный продукт - сетевой экран.


15-1300486988
Иксик
2011-03-19 01:23
2011.07.03
Вот когда надо написать Карлосу Гомесу, откуда знать где имя,


11-1234851691
xz386
2009-02-17 09:21
2011.07.03
фукция копирования


2-1301073992
awer
2011-03-25 20:26
2011.07.03
Не работает SetTimer ((


2-1301294374
S_K
2011-03-28 10:39
2011.07.03
работа с процедурными и перечисляемыми типами данных




   Наверх