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

Вниз

Фокус на Stringgrid   Найти похожие ветки 

 
pavelkq   (2009-01-15 14:18) [0]

Устанавливаю фокус на строку (выделение строками).
StringGrid1.SetFocus;
StringGrid1.Row:=MyRow;

Срабатывает, но эта выделенная строка находится где-то внизу таблицы, за пределами видимости. Если ее двинуть вверх/вниз (клавишами или колесиком мышки), то строка сразу становится в видимой части таблицы. Как сделать, чтобы она сразу была видна посре перемещения на нее фокуса?


 
{RASkov} ©   (2009-01-15 15:24) [1]

В D7 код из [0] нормально отрабатывает... ничего двигать и нажимать дополнительно не нужно...
Но... Но если в данный момент(в момент выполнения кода [0]) Текущий Row у StringGrida = MyRow, и он не в области видимости, то да - ничего не произойдет....
Можно в данном случае поиграться с StringGrid.TopRow...


 
Pavelkq   (2009-01-15 20:47) [2]


> {RASkov} ©

StringGrid.TopRow не помог. У кого еще такие проблемы были и как их победить?


 
MsGuns ©   (2009-01-15 21:00) [3]

Чему равен RowCount ?


 
{RASkov} ©   (2009-01-15 22:57) [4]

> StringGrid.TopRow не помог.

Не верю. Ну да ладно....
А если сделать так:
 StringGrid1.Row:=MyRow-1;
 StringGrid1.Row:=MyRow;
 StringGrid1.SetFocus;
? :) Не, так конечно делать не нужно, но попробуй.... Ибо:
procedure TCustomGrid.SetRow(Value: Longint);
begin
 if Row <> Value then FocusCell(Col, Value, True);
end;

Победить можно так:
type TMyGrid = class(TCustomGrid);
procedure TForm1.Button1Click(Sender: TObject);
begin
 TMyGrid(StringGrid1).FocusCell(StringGrid1.Col, MyRow, True);
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
15-1230810936
Slider007
2009-01-01 14:55
2009.03.01
С днем рождения ! 1 января 2009 четверг


2-1232197869
Любитель
2009-01-17 16:11
2009.03.01
Ошибка при установке


15-1230488629
TCrash
2008-12-28 21:23
2009.03.01
А подскажите готовое решение


15-1230972723
Михаил2
2009-01-03 11:52
2009.03.01
SimpleXml


15-1230955511
TUser
2009-01-03 07:05
2009.03.01
Что это такое?