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

Вниз

Перебор строк в таблице   Найти похожие ветки 

 
TDM   (2002-04-21 16:32) [0]

Добрый день. Не могу сделать перебор всех строк таблицы (Table) по какому нибудь определенному столбцу. Например в таблице 50 строчек и 5 столбцов, как мне получить список всех строчек первого столбца ??? Так как таблица сразу же отображается в DBGrid, то использования Table.Next или Table.RecNo приходится избегать - иначе получается прямо на экране прокрутка всей таблицы.

Не знаю что делать, помогите кто может.
Заранее спасибо.


 
Anatoly Podgoretsky   (2002-04-21 16:50) [1]

Ну если ты не хочешь использовать Table.Next или Table.RecNo то никак


 
TDM   (2002-04-21 17:43) [2]

А можно как нибудь без прокрутки таблицы обойтись ??? Например отключить ее, перебрать записи а потом вернуть курсор в начальную позицию ???


 
Anatoly Podgoretsky   (2002-04-21 17:49) [3]

Можно отключить, а можно дополнительный набор данных иметь, по вкусу. Все зависит от того зачем нужно перебирать и что с перебором делать.


 
777   (2002-04-21 18:48) [4]

Если просто возвращаться в исходное положение, то
можно таблицу проиндексировать, а после
перебора найти по индексам нужное значение.
Или использовать TTable.Lookup


 
777   (2002-04-21 18:57) [5]

Извините, погорячился с Lookup :)
(TDM © требуется ведь только
получить список ВСЕХ значений?)


 
TDM   (2002-04-21 19:37) [6]

да, просто список.... Самое интересное что в свойстве Table есть счетчик строчек (записей) RecordCount, но явно указать на какую то определенную строку почему то нельзя. Придется придумывать что нибудь...... Спасибо всем за помощь.


 
kaif   (2002-04-21 20:46) [7]

Чтобы Grid при перекрутке не отображало процесс, проще всего сделать так:

var
N: integer;

with Table do
begin
DisableControls
try
N := RecNo; //запоминаем номер строки в наборе
здесь прокрутка, например,
while (что-то) and not Eof do
Next;
потом возврат на исходную запись Table.RecNo := N
finally
EnableControls;
end;
end;


 
777   (2002-04-22 00:48) [8]

А индексы всё равно пригодятся.
по моему это реальный выход.



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

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

Наверх




Память: 0.45 MB
Время: 0.005 c
3-49885
Илья_____
2002-04-18 18:54
2002.05.16
Как получить номер строки DBGrid a, на которой стоит курсор


1-49915
Windeus
2002-05-03 08:49
2002.05.16
Extension in Savedialog


1-50021
Dinara
2002-05-01 13:21
2002.05.16
Как освободить переменную?


14-50136
Sergey13
2002-04-05 09:19
2002.05.16
Кто мы по бумажке?


1-49939
BlackGrin
2002-05-03 19:41
2002.05.16
Canvas does not allow drawing





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