Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Ширина колонки в DBGRIDEH (...EH!)   Найти похожие ветки 

 
anatolyk   (2004-03-13 11:30) [0]

Народ, всем привет1
Долбаюсь с прстым, наверное, вопросом. Нужно автоматом устанавливать ширину колонки по значению.

Делаю так:
procedure TForm1.DBGridEh2DrawColumnCell(Sender: TObject;
 const Rect: TRect; DataCol: Integer; Column: TColumnEh;
 State: TGridDrawState);
var
CellWidth : integer;
HoldColor : TColor;
begin

 HoldColor := DBGridEh2.Canvas.Brush.Color;
 if not Column.Field.CanModify then begin
   DBGridEh2.Canvas.Brush.Color := clBtnFace;
 end;

 CellWidth:= DBGridEh1.Canvas.TextWidth(Column.Field.AsString);
 if Column.Width < CellWidth then
   Column.Width := CellWidth;
 DBGridEh2.DefaultDrawColumnCell(Rect,DataCol,Column,State);
 DBGridEh2.Canvas.Font.Color :=  HoldColor;
end;

Глючит, однако.
Иногда (например, при прокрутке вправо) Фокус ячейки переходит на соседний (обычно верхний) ряд , указатель на запись остается на месте. Получается, что поля редактируются в чужом ряду и сохраняются в чужой записи.
Иногда при переходе к последней записи (через навигатор), фокус сдвигается только колесом мыши, и то надо сначала смотать вниз, потом - наверх. Ну, и еще там кое-что.
Убираю установку ширины - все работает как надо.


 
anatolyk   (2004-03-13 12:00) [1]

Ой, простите.
CellWidth:= DBGridEh1.Canvas.TextWidth(Column.Field.AsString);
следует читать
CellWidth:= DBGridEh2.Canvas.TextWidth(Column.Field.AsString);

(грид один, есс-но)



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

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.07 c
14-1079814053
Andy BitOff
2004-03-20 23:20
2004.04.11
А чего случилось??????


1-1080110860
Layner
2004-03-24 09:47
2004.04.11
Помогите отработать действия с TTimer.


6-1079092329
ki11er
2004-03-12 14:52
2004.04.11
Аналог NMUDP в Delphi 7


1-1082660847
Боян Георгиев
2004-04-22 23:07
2004.04.11
Курсор


3-1079104653
ZSergey
2004-03-12 18:17
2004.04.11
Поддерживает ли ADO в запросах соединение (||) ?