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

Вниз

Как отобразить список записей поля таблицы в combobox?   Найти похожие ветки 

 
Bormanoid   (2002-02-07 21:25) [0]

Очень признателен!


 
Gregory   (2002-02-08 08:35) [1]

Если DataSet уже есть (Query или Table, например), то используй DBLookupComboBox - там можно задать и отображаемое, и ключевое поля. Или:

with ComboBox1 do
begin
Items.Clear;
DataSet.First;
for i := 1 to DataSet.RecordCount do
begin
Items.Add( DataSet[ "<field to view>" ] );
DataSet.Next;
end;
end;


 
Johnmen   (2002-02-08 11:43) [2]

>Gregory :
with ComboBox1 do
begin
Items.Clear;
DataSet.First;
while not DataSet.Eof do
begin
Items.Add( DataSet[ "<field to view>" ] );
DataSet.Next;
end;
end;



 
Alexandr   (2002-02-08 11:50) [3]

дык это же один хер.
Просто в первом случае записи фетчатся сразу( при recordcount)
а во втором случае постепенно по мере next.

Другое дело, что некоторые компоненты доступа (к BDE это не относится) могут неправильно посчитать recordCount (по крайней мере пока FetchAll не сделать или Last). Но это частности.

Кстати, даже если компоненты будут считать RecordCount только отфетченных записей (так делает например FIBPlus), то первый вариант все равно выполнится правильно. Т.к. сначала RecordCount будет равен 1, а потом с каждым next он будет возрастать на 1, пока до конца выборки не дойдет.


Вот такой вот полный ответ.


 
Johnmen   (2002-02-08 11:57) [4]

>Alexandr © : А кто говорит, что неправильно ? Просто второй пример - более грамотно.


 
Alexandr   (2002-02-08 12:01) [5]

в чем выражается "более грамотно".
Можно в двух словах?


 
Johnmen   (2002-02-08 12:12) [6]

>Alexandr © :

1. сарказм неуместен
2. ...Другое дело, что некоторые компоненты доступа (к BDE это не относится) могут неправильно посчитать recordCount (по крайней мере пока FetchAll не сделать или Last). Но это частности...
3. не надо заводить i : integer;



 
Bormanoid   (2002-02-08 12:22) [7]

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


 
Johnmen   (2002-02-08 12:31) [8]

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
Label1.Caption:=ComboBox1.Text;
end;


 
Alexandr   (2002-02-08 12:36) [9]

2Johnmen
понял. Вообщем согласен.


 
Bormanoid   (2002-02-08 12:37) [10]

Johnmen>
У меня в ComboBox не меняеться запись в ComboBox1? Как сменить при OnChange(на выбраную)?


 
Alexandr   (2002-02-08 12:40) [11]

Она сама изменится если у тебя у Combobox1 ReadOnly не стоит.


 
Bormanoid   (2002-02-08 12:49) [12]

У меня в ComboBox.ReadOnle:=false;


 
Alexandr   (2002-02-08 12:52) [13]

слушай, а компонент у тебя какой? Точно Tcombobox?



 
Bormanoid   (2002-02-08 12:55) [14]

Ой-ой-ой!
Блин!
У меня DBComboBox....


 
Alexandr   (2002-02-08 12:59) [15]

я так и думал..!


 
Bormanoid   (2002-02-08 12:59) [16]

Спасибо!
Я просто сменил DBComboBox на простой СomboBox и все ОКЕЙ.
Но почему же DBComboBox не меняет...


 
Alexandr   (2002-02-08 13:02) [17]

а потому что ты ему не задал кокое ему поле менять, он же значение из этого поля берет, а раз поля нет, то и выбранного значения нет.
Тут как говорится "No pay -no game"



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

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

Наверх





Память: 0.48 MB
Время: 0.004 c
3-19108
HDD
2002-02-11 13:10
2002.03.07
Помогите люди добрые!


1-19122
Aleksandr
2002-02-20 19:13
2002.03.07
Почему компоненты АДО не создаются с Owner=nil?!!!!!!


3-19104
tovSuhov
2002-02-11 11:40
2002.03.07
Набор команд SQL


1-19181
olookin
2002-02-18 14:14
2002.03.07
Удаление формы из динамического массива


1-19258
Demon[DZ]
2002-02-20 15:10
2002.03.07
Component package





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