|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.08.2007, 16:33 | #1 |
Форумчанин
Регистрация: 22.05.2007
Сообщений: 511
|
Переход по букве на нужную строчку в DBGrid
Как осуществить переход в DBGrid как в 1С. Т.е ввожу букву и в таблице курсор устанавливается на строчке которая начинается на эту букву.
|
16.08.2007, 05:34 | #2 | |
Форумчанин
Регистрация: 20.06.2007
Сообщений: 270
|
Цитата:
1. Таблица должна быть проиндексирована по этому полю. Индекс во время поиска включить. 2. Поиск по базе осуществляется методом FindNearest. Он пытается отыскать запись в которой индексные поля соответствуют указанным значениям. Если такая запись найдена, указатель перемещается на нее. Если не найдена - на ближайшую запись с большим значением индекса. 3. В компоненте, где набирают значение, напиши обработчик на событие OnKeyPress. В ктором используй метод FindNearest для поиска. Все...
-Кукушка, кукушка! Накукуй мне сто лет!
-А накукуй тебе столько? (с) Библия. Вольный перевод с древнееврейского. |
|
16.08.2007, 08:51 | #3 |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
!
Ну, ты можешь использовать ,как тебе выше написали , FindKey или FindNearest, можно использовать фильтрацию , а можно использовать Locate или Lookup....
Locate(поле гдеискать, что искать, параметры) lookup(где искать, что , результирующее поле) Filter:='поле=''Значение''' или Table1.filter:='поле='+QuotedStr(зн ачение) Если тебе нужно перейти на запись, которая была найдена, то тебе нужно Locate Можно похимичить с запросами.... Просто передать Фокус DbGrid после выполнения... можно использовать запросы для поиска... Тоесть тут есть где разгуляться Вот пример : select * from Table1 where ПОЛЕ like 'А%'; Тут выдаст все значения , начинающиеся на букву "А"
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
Последний раз редактировалось Pitbull; 16.08.2007 в 08:55. |
24.08.2007, 23:06 | #4 |
Чайник :D
Пользователь
Регистрация: 22.12.2006
Сообщений: 65
|
Помогите, пожалуйста!!! Я только начинаю программить на Делфи. У меня горит курсач. Вот вкратце о нем: есть главная таблицас данными о сотрудниках (ФИО, код должности, подразделение); есть рассчетная ведомость (фио, начислено, подоходный, отчисл. в пенс. фонд, к выплате), в которой высчитывается зарплата каждого сотрудника. Ведомость должна выводиться по каждому подразделению. Есть две проблемы.
1. Как вывести ведомость по подразделениям? Я пыталась использовать DBLookupComboBox, но никак не могу правильно соединить его с главной таблицей и ведомостью. 2. Никак не могу правильно прописать синтаксис для loCaseInsensitive и loPartialKey в поиске по главной таблице. Помогите кто чем может. Буду очень признательна.
Мы все учились по-немногу
Чему-нибудь и как-нибудь... Пушкин А.С. |
27.08.2007, 09:59 | #5 | |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
Цитата:
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
|
|
19.08.2009, 13:51 | #6 |
Форумчанин
Регистрация: 04.08.2009
Сообщений: 101
|
))))))))))))))))))))))))))))))))) )))
|
19.08.2009, 14:41 | #7 |
Форумчанин
Регистрация: 22.09.2007
Сообщений: 540
|
Можно по KeyPress пробегать по всему гриду и считывать первый символ внужном поле грида
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Рразъясните строчку. | Amen | Помощь студентам | 11 | 30.08.2008 02:45 |
Как с поиощью hiew вставить в файл строчку, "раздвинуть" файл и вставить туда строчку? | barand | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 28.06.2008 10:58 |
Запустить строчку как код. | Dj_smart | Общие вопросы Delphi | 12 | 21.04.2008 21:58 |
Как к какой либо букве привезать определенное действие? | LuMax | Помощь студентам | 4 | 25.11.2007 14:06 |
DBLookupComboBox на первую строчку | Inbox | БД в Delphi | 7 | 29.10.2007 13:26 |