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

TSringGrid. Сорри за тупой вопрос...   Найти похожие ветки 

 
Begin   (2004-01-27 13:53) [0]

Очень нужно поймать ресайз Column"a.... А как ???
OnDrawGrid не помог.. то ли я туплю, то ли не вижу чего

procedure TForm1.DGridDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
begin
if (DGrid.Row = ARow) and (DGrid.Col = ACol) and (ACol = 1) then
begin
FillPanel.Left := FillPanel.Left+5
end;


Не работает. Панелька двигается(as ex.) при ресайзе ЛЮБОЙ колонки, а надо чтоб она двигалась только при ресайзе одной определенной (первой). Или может как то можно отловить событие изменения щирины Col???


 
Andrey007   (2004-01-27 16:03) [1]

В форме объявляются две переменные:
private
rl: Integer; // Левая позиция нужного столбца Grid"a
rw: Word; // Ширина столбца нужного Grid"a

procedure TForm.GridMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X,Y: Integer);
var r: TRect;
begin
r:=Grid.CellRect(3,0);
rw:=Grid.ColWidths[3];
rl:=r.Left
end;

procedure TForm.GridMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X,Y: Integer);
var r: TRect;
begin
r:=Grid.CellRect(3,0);
if rl<>r.Left then GridTopLeftChanged(Sender); // ну например
if rw<>Grid.ColWidths[3] then // ещё чего-нибудь
end;


 
VAleksey ©   (2004-01-27 16:52) [2]

Может здесь найдешь что-нибудь.
http://www.delphikingdom.ru/helloworld/nogrid.htm



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

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



Память: 0.45 MB
Время: 0.017 c
1-16315
Constant
2004-01-25 14:54
2004.02.06
Инкапсуляция


3-16133
y-soft
2004-01-16 12:25
2004.02.06
Защита от SYSDBA


1-16260
Bers01
2004-01-26 11:23
2004.02.06
Работа с таймером


6-16553
Gennady
2003-12-03 10:35
2004.02.06
Передача TStream между TIdTCPServer и TIdTCPClient.


1-16472
Qwet
2004-01-27 19:50
2004.02.06
Активная программа или окно




   Наверх