Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.06;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.031 c
1-16332
Andrey_Shalin
2004-01-25 05:44
2004.02.06
Потоки


1-16270
SnapIn
2004-01-23 17:48
2004.02.06
Создать экземпляр объекта по названию класса в строке


14-16625
Думкин
2004-01-14 06:14
2004.02.06
С днем рождения! 14 января.


1-16249
SniZ
2004-01-24 00:22
2004.02.06
сжатие данных


3-16145
Максим
2004-01-15 09:59
2004.02.06
Русский язык в Delphi