![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос по comboBox [D7, Paradox]
Юлия © (2003-09-07 19:02:00)
Необходимо организовать выбор из DBcombobox на форме. Чтобы можно было выбирать значение из таблицы, не связанной ни с чем. Просто поле для выбора. Кладу DBComboBox, устанавливаю свойства DataSource u DataField. Отображается значение, соответствующее первой записи. Пишу table1.next, перемещается к следующей записи. Пытаюсь раскрыть для выбора значения - не получается. Как заставить список раскрываться?
Простите за глупый вопрос.
Nikolay M. (2003-09-08 10:33:00) [1]
А, так вот значит, как нужно понимать
> Чтобы можно было выбирать значение из таблицы, не связанной
> ни с чем
...
> stud ©
Мои извинения, полностью согласен...
stud (2003-09-08 10:30:00) [2]
> Vlad ©
это точно. проще - не бывает
Vlad (2003-09-08 10:21:00) [3]
2 MsGuns © ,2 Sergey_Masloff Как вы поняли что у автора вобще есть какой либо грид ?
DBLookupCombobox судя по всему как раз то что нужно автору.
ListSource - как раз обеспечит раскрывающийся список.
И не нужно будет тогда мудрить AddObject"ом, а брать значения напрямую из DataSet
Nikolay M. (2003-09-08 10:09:00) [4]
> используй dblookupcombox
Имхо ты или не разобрался как он работает, или что нужно автору ветки...
> ComboBox1.Items.AddObject("Строка",p);
А зачем так? Вот из справки по TDBComboBox.Items:
Contains the strings that appear in the list of the database combo box.
property Items: TStrings;
Description
Use Items to supply the values in the list from which the user can choose. Because Items is an object of type TStrings, you can add, delete, insert, and move items using the Add, Delete, Insert, Exchange, and Move methods of the TStrings object. For example, to add each string to the combo box list, write code such as the following:
while not Table2.Eof do begin
DBComboBox1.Items.Add(Table2.FieldByName("Country").AsString);
Table2.Next;
end;
The ItemIndex property determines which item is selected, if any.
Sergey_Masloff (2003-09-08 10:08:00) [5]
stud © (08.09.03 09:32) [6]
>используй dblookupcombox
на фига?
MsGuns © (07.09.03 23:14) [5]
>1. Если записей таблицы 2 немного...
>2. Если часто обновляется и/или много записей...
Именно так. Отличный совет который подойдет в 99.99% случаев (а начинающим - в 100%)
stud (2003-09-08 09:32:00) [6]
используй dblookupcombox
MsGuns (2003-09-07 23:14:00) [7]
Пардон, кажется не врубился в тему. Если надо выбирать значение для какого-то поля таблицы 1 из какого-то поля несвязанной
таблицы, то можно делать:
1. Если записей таблицы 2 немного и она является редкол обновляемой, то в гриде таблице 1 в соотв.ячейке поставить просто статический список, подгружаемый запросом по таблице 2
2. Если часто обновляется и/или много записей, то табл.2 надо показывать в своем гриде на модальной форме, открываемой по клику на соотв.ячейке грида, стиль которой поставить в эллипс. При открытии формы запрос переоткрывется. Плюс этого метода в том, что можно "по ходу" вносить изменения в табл.2
MsGuns (2003-09-07 22:38:00) [8]
Зачем для выбора значения из статического списка (не связанним с таблицей) использовать DBComboBox ?
Юлия (2003-09-07 20:55:00) [9]
глупый вопрос (последний)
тихо сам с собою я веду беседу...
Юлия (2003-09-07 20:48:00) [10]
Если добавляю строчку в ComboBox таким образом (var p:^integer):
ComboBox1.Items.AddObject("Строка",p);
Как получить p?
Юлия (2003-09-07 19:53:00) [11]
неужели никто не сталкивался с такой проблемой?