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

Вниз

ComboBox   Найти похожие ветки 

 
Valerik ©   (2008-11-20 09:04) [0]

Подскажите пожалуйста как занести в ComboBox список названий из таблицы, причем названия не должны повторяться.
Пытался и с помощью другого компонента. не получилось!!!!


 
Palladin ©   (2008-11-20 09:09) [1]

что конкретно вызывает затруднения?


 
Григорьев Антон ©   (2008-11-20 09:22) [2]

А не проще будет использовать TDBLookupComboBox?


 
Anatoly Podgoretsky ©   (2008-11-20 09:37) [3]

> Valerik  (20.11.2008 9:04:00)  [0]

Наверно надо было использовать не другой, а другой компонент.


 
Ega23 ©   (2008-11-20 10:00) [4]

Берём TDataSet, выполняем запрос select distinct Name from Table

Далее:
Вариант 1. TComboBox
ComboBox.Items.Clear;
with DataSet do
begin
 First;
 while not Eof do
 begin
   ComboBox.Items.Add(FieldByName("Name").AsString);
   Next;
 end;
end;


Вариант 2. TDBLookupCombo
Берём TDataSource, ему в качестве TDataSet прописываем наш.
Берём TDBLookupCombo, прописываем ему ListSource, KeyField и ListField.
Наслаждаемся.


 
Valerik ©   (2008-11-20 10:06) [5]

Напишите по подробнее, что должно содержать ListSource, KeyField и ListField?
Потому что я попробовал и компонент как буд то не активным, хотя Enabled стоит в True.


 
Valerik ©   (2008-11-20 10:12) [6]

И еще выдает ошибку при изменении знасений в KeyField и ListField: "Circular datalinks are not allowed"


 
Ega23 ©   (2008-11-20 10:13) [7]


> Напишите по подробнее, что должно содержать ListSource,
> KeyField и ListField?


TDBComboBox + F1


 
Valerik ©   (2008-11-20 13:40) [8]

А как сделать, что бы не повторялись?


 
Ega23 ©   (2008-11-20 13:44) [9]


> А как сделать, что бы не повторялись?


У тебя как, с глазами проблемы? Ты [4] прочитал, или как?


 
NieL ©   (2008-11-20 14:11) [10]

Вот как вариант:


procedure Tform_Main.Button1Click(Sender: TObject);
var
 ListNames: TStringList;
begin
 ListNames := TStringList.Create;
 try
   ListNames.Sorted := True;
   ListNames.Duplicates := dupIgnore;
   with Table1 do
   begin
     First;
     while not EOF do
     begin
       ListNames.Add(FieldByName("Name").AsString);
       Next;
     end;
   end;
   ComboBox1.Items.AddStrings(ListNames);
 finally
   ListNames.Free;
 end;
end;


Но правильнее использовать DBComboBox


 
Ega23 ©   (2008-11-20 14:23) [11]


> NieL ©   (20.11.08 14:11) [10]
>
> Вот как вариант:


Ещё один...
Ты [4] причитал, или нет?


 
Valerik ©   (2008-11-25 08:41) [12]

Он на такой запрос (в [4]), выдает ошибку. почему?


 
Valerik ©   (2008-11-25 09:23) [13]

Все разобрался! спасибо большое за помощь!!!!!!!



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

Форум: "Начинающим";
Текущий архив: 2009.01.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.003 c
2-1227161746
b@v
2008-11-20 09:15
2009.01.04
DBGrid и прокрутка


2-1227282378
СиничЪ
2008-11-21 18:46
2009.01.04
Цветной текст в Form.Caption


2-1227161056
Valerik
2008-11-20 09:04
2009.01.04
ComboBox


15-1226242743
ProgRAMmer Dimonych
2008-11-09 17:59
2009.01.04
Подскажите программку для создания видео


15-1225992268
palva
2008-11-06 20:24
2009.01.04
Гастарбайтеров станет больше





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