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

Вниз

Изменение ширины фиксированной колонки в StringGrid   Найти похожие ветки 

 
JIruaasgyy   (2004-02-29 13:33) [0]

Как в StringGrid изменить ширину фиксированной колонки?У меня это не получается сделать даже если Я ставлю "goColSizing" на True.Видимо,это не предусмотренно.А как тогда быть, если слово стоящее на фиксированной колонке не влазит?


 
Defunct ©   (2004-02-29 13:40) [1]

ColWidth[] := xx
Не помогает?

Откройте DFM файл в текстовом редакторе, посмотрите как настраивается StringGrid


 
JIruaasgyy   (2004-02-29 17:16) [2]

ColWidth[] := xx
Это программно, а я хочу чтоы можно было расширять с помощью мыши


 
TButton ©   (2004-02-29 17:20) [3]

:) можно. только у тя... вобщем должны быть фиксированы либо только колонки, либо только строки. если и те и те, то никак.


 
Vlad40   (2004-02-29 18:27) [4]

Все это можно реализовать самому. Вот тебе пример кода. В принципе он вроде бы работает, только еще надо бы отрисовать перемещение границы при передвижении нажатой мышки - лень было писать.


var
StartResizeFixCol : Boolean = false;

procedure TForm1.StringGrid1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
var
Rect: TRect;
begin
Rect.Left:=StringGrid1.CellRect(0,0).Right-3;
Rect.Right:=StringGrid1.CellRect(0,0).Right+3;
Rect.top:=StringGrid1.CellRect(0,0).top;
Rect.Bottom:=StringGrid1.CellRect(0,0).Bottom;
if PtInRect(Rect, Point(x,y)) then
StringGrid1.Cursor:=crHSplit
else
StringGrid1.Cursor:=crDefault;
end;

procedure TForm1.StringGrid1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
Rect: TRect;
begin
Rect.Left:=StringGrid1.CellRect(0,0).Right-3;
Rect.Right:=StringGrid1.CellRect(0,0).Right+3;
Rect.top:=StringGrid1.CellRect(0,0).top;
Rect.Bottom:=StringGrid1.CellRect(0,0).Bottom;
if PtInRect(Rect, Point(x,y)) then
StartResizeFixCol := True;
end;

procedure TForm1.StringGrid1MouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if StartResizeFixCol then
begin
StringGrid1.ColWidths[0]:=x;
StartResizeFixCol := False;
end;
end;




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

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

Наверх




Память: 0.47 MB
Время: 0.028 c
14-43815
Феликс
2004-02-22 18:44
2004.03.14
Просьба подсказать программу для торговой фирмы.


14-43788
Undert
2004-02-18 17:46
2004.03.14
IndyHTTP (tidHTTP)


14-43862
Style
2004-02-21 15:52
2004.03.14
Люди, а как крякнуть Norton Antivirus 2004?


1-43622
Zelius
2004-03-02 14:58
2004.03.14
Что народ использует для создания визардов?


3-43401
AGN
2004-02-12 13:43
2004.03.14
DBGrid - печать