Форум: "Основная";
Текущий архив: 2004.02.06;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.033 c