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

Вниз

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

 
shoo   (2003-05-30 10:23) [0]

Уважаемые мастера, требуется, собственно, сабж, например, при нажатии на кнопку. По хелпу догадываюсь, что связано с букмарками, но не могу сообразить, как это все по умному сделать. Заранее благодарю.


 
AlexSerp   (2003-05-30 10:32) [1]

Если надо потом обработывать все строки,
то для чего их выделять?
Объясни смысл программного выделения ВСЕХ строк.


 
Соловьев   (2003-05-30 10:45) [2]

Наверное shoo именно хочет обрабатывать видимые строки, тогда ему надо просто занести в динамический масив Id записей по AfterScrol НД, а потом их обработать через SQL. Можно и по другому...


 
гончий   (2003-05-30 10:47) [3]

Лови..только на больших таблицах будет притормаживать:
(c)2003 гончий :)
------------------------------------------------------
procedure TForm1.SelectAllRows;
var
Tbl: TDataSet;
pBm: TBookmark;
begin
Tbl := DbGrid1.DataSource.DataSet;
Tbl.DisableControls;
pBm := Tbl.GetBookmark;
Tbl.First;
try
while not Tbl.Eof do
begin
DBGrid1.SelectedRows.CurrentRowSelected := True;
Tbl.Next;
end;
finally
Tbl.GotoBookmark(pBm);
Tbl.FreeBookmark(pBm);
Tbl.EnableControls;
end;
end;


 
Zacho   (2003-05-30 10:48) [4]

В общем случае:
DBGrid.DataSource.DataSet.First;
while not DBGrid.DataSource.DataSet.Eof do
begin
DBGrid.SelectedRows.CurrentRowSelected:=true;
DBGrid.DataSource.DataSet.Next;
end;


 
shoo   (2003-05-30 10:52) [5]

2 AlexSerp: Уже написанная и весьма немаленькая процедура обрабатывает ТОЛЬКО выделенные строки, мне кажется, что выделить все строки проще, нежели поправлять процедуру. Если это действительно архисложно, так и скажите, пойду по другому пути.

И все-таки хотелось бы получить ответ, а не вопрос.
Спасибо.


 
MrZeRo   (2003-05-30 10:56) [6]

Да прочитайте же HELP наконец!
RTFM!!!!!!

ADOQuery1.First;
while not ADOQuery1.EOF do
begin
DBGrid1.SelectedRows.CurrentRowSelected := True;
ADOQuery1.Next;
end;

Что, очень трудно????!!!!!


 
Zacho   (2003-05-30 10:58) [7]


> shoo (30.05.03 10:52)

Ответы ты уже получил :-)
А процедуру все-таки поправить проще. Достаточно заменить в ней цикл по SelectedRows на цикл по датасету и убрать переход на запись по букмаркам.


 
shoo   (2003-05-30 11:03) [8]

Спасибо всем большое, все действительно оказалось несложно.
Не судите строго, иногда даже очевидное трудно понять.



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

Форум: "Базы";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.032 c
3-83950
first_aid
2003-06-04 08:56
2003.06.26
Как используя компоненты ADO создать базу данныз Access?


14-84544
race1
2003-06-07 13:33
2003.06.26
mail


14-84742
Soft
2003-06-05 14:22
2003.06.26
Начальный возраст для работы с компьютером


1-84206
Юнгман
2003-06-12 17:53
2003.06.26
Свернуть Проект


1-84413
qwerty2
2003-06-06 16:32
2003.06.26
Создание DCOM объекта в Win98





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский