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

Вниз

Выделение нескольких строк в TStringGrid   Найти похожие ветки 

 
Lakshmy ©   (2005-03-02 19:58) [0]

Подскажите, пожалуйста, как сделать так, чтобы можно было выделять несколько строк в TStringGrid. И чтобы было все как у людей - с Sift - все между указанными, с Ctrl - выборочно. А тут возникает еще один вопрос: как потом с этой выборкой работать. Есть у меня идеи, но они совершенно кривые и тупые. Хотелось бы что-нибудь поизящнее...


 
begin...end ©   (2005-03-02 20:12) [1]

> Lakshmy ©   (02.03.05 19:58)

Используйте свойство TStringGrid.Selection. В нём хранится прямоугольник выделения.


 
Lakshmy ©   (2005-03-02 21:00) [2]

...а дальше? я перерисовки не очень знаю... может ссылочку какую?


 
Lakshmy ©   (2005-03-02 21:00) [3]

...а дальше? я перерисовки не очень знаю... может ссылочку какую?


 
begin...end ©   (2005-03-02 21:10) [4]

> Lakshmy ©   (02.03.05 21:00) [2]

О каких перерисовках Вы говорите?

Вот так, например, можно выделить 2 первых строки в StringGrid"е:

StringGrid.Selection := TGridRect(Rect(1, 1, StringGrid.ColCount - 1, 2))


 
Lakshmy ©   (2005-03-02 21:15) [5]

ааа! я то подумала... Ну хорошо, это понятно. А как потом обрабатывать выделенные строки?


 
begin...end ©   (2005-03-02 21:18) [6]

> Lakshmy ©   (02.03.05 21:15) [5]

Верхняя строка выделенной группы - StringGrid.Selection.Top. Нижняя - StringGrid.Selection.Bottom.


 
Lakshmy ©   (2005-03-02 21:20) [7]

все! догнала! спасибо!


 
Lakshmy ©   (2005-03-04 19:52) [8]

У меня почему-то получается что

StringGrid.Selection.Top=StringGrid.Selection.Bottom

Почему?
Например у меня выделяется с 1 по 3 строку, должно ведь быть

StringGrid.Selection.Top=1
StringGrid.Selection.Bottom=3

Ведь так?


 
Lakshmy ©   (2005-03-04 19:57) [9]

Вот у меня так:

SGr.Selection:=TGridRect(Rect(CurCol,CurRow, SGr.ColCount-1, SGr.Row))

где [CurCol,CurRow] - координаты ячейки, с которой надо начать выделение. Визуально у меня выделяется, а вот когда к SGr.Selection обращаюсь, то получается то, что я выше написала


 
begin...end ©   (2005-03-04 20:47) [10]

> Lakshmy ©   (04.03.05 19:52) [8]
> Lakshmy ©   (04.03.05 19:57) [9]

У меня всё нормально.


 
Lakshmy ©   (2005-03-04 20:53) [11]

Я уже умудрилась обойти это место. Я по другому сделала



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

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

Наверх




Память: 0.49 MB
Время: 0.027 c
1-1109943377
100a
2005-03-04 16:36
2005.03.20
Стандартные функции удаления файлов


14-1109713249
Димон
2005-03-02 00:40
2005.03.20
У меня глюки или активность на форуме правда упала?


4-1107445384
Artur
2005-02-03 18:43
2005.03.20
Система


4-1107734223
Fessio
2005-02-07 02:57
2005.03.20
Папка "Мой компьютер"


3-1108471018
Laser
2005-02-15 15:36
2005.03.20
Фильтрация и Loockup поля