Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

подстановка [D5, Paradox]


guest123 ©   (2003-03-25 14:11:00) 

Здраствуйте мастера!
Видел одну БД там при заполнении поля имеется возможность выбора нужной записи из выпадающего списка. Попробую описать как это происходит:Вводиш последовательность значений и принажатии клавиши "стрелка вниз" выпадает список с данными где присутствует эта последовательность, далее пролистываеш той же самой стрелкой до нужного значения потом enter и запись подставляется, причем в других полях таблицы тоже подставляются данные соответсвующие этому значению). Вобщем хотел узнать как это можно сделать в дельфи.
Заранее благодарен!!!


Stas   (2003-03-26 13:20:00) [1]

to MsGuns

В свое время у меня было около 20 разных компонент, и я их все повытерал.
Что касается Эх-компонент, я в курсе что при работе грида подключается много Эх-компонент. Но все проги которые я делал, а они стоят на разных компах и системах, еще ни разу не глючили. А если бы и глючили, то исходники есть.
Винда тоже глючит, ты же себе не будешь систему писать сам, чтобы знать как устранить глюки ?


MsGuns   (2003-03-26 12:23:00) [2]

>Stas © (26.03.03 11:01)
>P.S. Я пользуюсь лишь одной готовой компонентой это EhLib.
И могу сказать, что это неглючная, нормальная библиотека.

Прежде чем утверждать подобное, надо поюзать не одну компоненту, и сделать это с АНАЛИЗОМ всех подключаемых библиотек и генерируемого кода. Так вот, с компонентой грида идет достаточно немалая "тележка" других Эх-компонент. Не разбирался до конца, но могу сказать с 90% гарантией, что некоторые из них элементарно глючат на некоторых видеокартах (в W98 по крайней мере) - у меня полтетради записей регистрации подвисания и перегрузок винды с одной и той же диагностикой.


Соловьев   (2003-03-26 11:44:00) [3]


> там я такого невстричал

$(DELPHI)\Demos\Db


guest123   (2003-03-26 11:42:00) [4]

Соловьев © (26.03.03 09:21)
какую именно, чета там я такого невстричал


Stas   (2003-03-26 11:01:00) [5]

To MsGuns
Я ничего не извращал, а наоборот, посоветовал EHLib и предупредил, что с этим не все согласны.

P.S. Я пользуюсь лишь одной готовой компонентой это EhLib.
И могу сказать, что это неглючная, нормальная библиотека.


Соловьев   (2003-03-26 09:21:00) [6]

открыть демки по БД


guest123   (2003-03-26 08:25:00) [7]

а по конкретней можна, с чего начать


MsGuns   (2003-03-25 20:58:00) [8]

>guest123 (25.03.03 17:33)
Для начала повозись со стандартными компонентами, не спеши связыватся с Эх! и прочими либами. Stas © извратил саму мысль, которая заключалась в том, ЧТО НЕ СЛЕДУЕТ ИСКАТЬ ПАНАЦЕИ ОТ ВСЕХ СВОИХ БЕД В ПОИСКАХ ГОТОВЫХ КОМПОНЕНТ.

В данном случае на лицо еще и обработка событий грида, и посылка ему сообщений программно (эмуляция нажатия юзером на кнопульке) и т.д.


guest123   (2003-03-25 17:33:00) [9]

уже начал


Johnmen   (2003-03-25 17:25:00) [10]

>...пака еще ничего неиспользую
Ну не понимаю я, как можно задавать вопросы, даже не начав что-либо писать ???!!!


Соловьев   (2003-03-25 17:20:00) [11]

фильтр на справочную таблицу...


guest123   (2003-03-25 17:16:00) [12]

а если 3000 записей?
надо вот так например таблица имет поля: артикул,наименование,цена и др., я пишу в артикул 50603 и нажимаю на клавиатуре стрелку вниз появляется выпадающий список в нем 6 5060312, 5060314, 803 50603001 и тд.короче тока те записи где есть 50603вначале, серидине, в конце без разницы пролистываю клавишей стрелка вниз до нужной записи жму ентер и потом она подставляется как в DBLookupComboBox.Вобщем нада чтоб в выпадающем списке были записи где есть 50603


Соловьев   (2003-03-25 14:52:00) [13]

Table и для Query. Для них аналогично.
Двойной клик на TTable. Добавляешь поля. Потом там есть New...
Там есть 3 вида: Data, Calculated, LookUp. тебе надо третье.
Предварительно на форму надо положить справочную таблицу и привяжать DataSource. Потом Ложишь на форму DBGrid. Компилишь. И в уже рабочей проге дважды кликаешь на LookUp поле там должен появиться список. Можно еще в настройках DBGrida выставить для поля PickList, но он уже без справочной таблицы.


Stas   (2003-03-25 14:52:00) [14]

Для Table и для Query они одинаковые.
Если стандартные то DBLookupComboBox.


guest123   (2003-03-25 14:48:00) [15]

Какие компоненты используешь?
пака еще ничего неиспользую, но хателось бы узнать и для Table и для Query


Sheriff   (2003-03-25 14:44:00) [16]

Страница Data Controls
DBLookupComboBox


Соловьев   (2003-03-25 14:40:00) [17]

Какие компоненты используешь?


guest123   (2003-03-25 14:39:00) [18]

I>ну может хоть чего-то понятно ...:-))))
неа %))

Хотя MSGuns и Fiend. Говорят что все нужно делать самому
очень хотелась бы узнать как самому это все сделать


Stas   (2003-03-25 14:31:00) [19]

EHLIB-набор готовых компонентов.
Хотя MSGuns и Fiend. Говорят что все нужно делать самому.


tomkat   (2003-03-25 14:24:00) [20]

Это называется LookUp поля ....
есть две таблицы - главная <MAIN m > и подстановочная <DICT d>
в главной заводится поле ID_dic - идентификатор записей из DICT
соединяются они запросом типа
SELECT m.* ,d.name
FROM
main m
,dict d
WHERE
d.id=id_dic
потом на этом запросе (он выступает в роли датасета) указывается, что столбец NAME есть LookUP и ключ для него ID_dic, а берутся значения из другого датасета (тоже должон быть на форме) - таблицы DICT ....
ну может хоть чего-то понятно ...:-))))


Наверх

Титульная страница Поиск, карта сайта Написать письмо