Ширина и высота ячеек stringgrid вручную

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
095
Сообщения: 34
Зарегистрирован: 13 авг 2008, 19:15
Контактная информация:

Подскажите такую вещь:
как изменять вручную ширину столбцов или высоту строк когда в таблице Stringgrid отсутствуют фиксированные столбцы и фиксированные строки?
095
Сообщения: 34
Зарегистрирован: 13 авг 2008, 19:15
Контактная информация:

проде поэксперементировал сам .. :

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 может если где перезаморочено?
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

чёт я не понял почему проверка на нажатую кнопку мыши происходит по цвету панели ;)
и жаль что без тэгов - читать не удобно :(
Изображение
095
Сообщения: 34
Зарегистрирован: 13 авг 2008, 19:15
Контактная информация:

Какие предложения?))) Насчет цвета панели. я использовал это для визуализации, а так - сейчас переменная

ps: тег code тут не схавался походу..
Ответить