Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.03.20;
Скачать: [xml.tar.bz2];

Вниз

Выделение нескольких строк в 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.042 c
14-1109863401
Dann
2005-03-03 18:23
2005.03.20
Forward declarations in Cpp


14-1109429017
TUser
2005-02-26 17:43
2005.03.20
Форум по VBA


6-1101368472
Жуков
2004-11-25 10:41
2005.03.20
Сообщения по локальной сети


6-1106076658
Alexey8000
2005-01-18 22:30
2005.03.20
Кто нить знает как использовать RAdmin в своих программах?


10-1086094163
Tormoz
2004-06-01 16:49
2005.03.20
Диапазон ячеек в Excel





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский