Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.025 c
3-1108656969
juice
2005-02-17 19:16
2005.03.20
привилегии на выполнение ХП для роли


8-1101715834
Алексей
2004-11-29 11:10
2005.03.20
WinampAPI


4-1108038828
Artur
2005-02-10 15:33
2005.03.20
Работа с памятю


1-1109858480
Erik1
2005-03-03 17:01
2005.03.20
Выдление всей неактивной записи в DbEHGrid.


3-1108991436
Вудупипл
2005-02-21 16:10
2005.03.20
Grid с картинками в сетке




   Наверх