Страница 1 из 1
Ширина и высота ячеек stringgrid вручную
Добавлено: 22 янв 2010, 16:25
095
Подскажите такую вещь:
как изменять вручную ширину столбцов или высоту строк когда в таблице Stringgrid отсутствуют фиксированные столбцы и фиксированные строки?
Re: Ширина и высота ячеек stringgrid вручную
Добавлено: 23 янв 2010, 14:40
095
проде поэксперементировал сам .. :
procedure TMainFRM.StringGrid3MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var glc,i:integer;
begin
StringGrid3.Cursor:=crDefault;
Panel2.Caption:=IntToStr(X)+','+inttostr(Y);
//надо менять курсор на разделительных линиях в гриде
if StringGrid3.GridLineWidth>0 then
begin
glc:=0; //координата gridline;
for i:=0 to StringGrid3.ColCount-2 do
begin
glc:=glc+StringGrid3.ColWidths+StringGrid3.GridLineWidth;
if (X>glc-1) and (X<glc+1) then
begin
StringGrid3.Cursor:=crHSplit;
//коррекция по 0 в минус и в плюс
GridCorr:=X;
//зафиксить тек ширину столбца его номер (глобальные перем)
GridColW1:=StringGrid3.ColWidths;
GridColW2:=StringGrid3.ColWidths[i+1];
GridCol1:=i;
GridCol2:=i+1;
end;
end;
{на будущее для строк
glc:=0; //координата gridline;
for i:=0 to StringGrid3.RowCount-2 do
begin
glc:=glc+StringGrid3.RowHeights+StringGrid3.GridLineWidth;
if (Y>glc-1) and (Y<glc+1) then StringGrid3.Cursor:=crVSplit;
end;
}
end;
//пытаемся отобразить смещение от 0
//сделать проверку на заползание в другие ячейки {!}
if Panel2.Color=clBlue then //если нажата левая кн мыши
begin
StringGrid3.ColWidths[GridCol1]:=GridColW1+(X-GridCorr);
StringGrid3.ColWidths[GridCol2]:=GridColW2-(X-GridCorr);
end;
if Panel2.Color=clRed then Panel2.Color:=clBlue;
end;
вроде работает)) подскажите plz может если где перезаморочено?
Re: Ширина и высота ячеек stringgrid вручную
Добавлено: 26 янв 2010, 11:09
Игорь Акопян
чёт я не понял почему проверка на нажатую кнопку мыши происходит по цвету панели

и жаль что без тэгов - читать не удобно

Re: Ширина и высота ячеек stringgrid вручную
Добавлено: 26 янв 2010, 12:16
095
Какие предложения?))) Насчет цвета панели. я использовал это для визуализации, а так - сейчас переменная
ps: тег code тут не схавался походу..