Текущий архив: 2006.07.16;
Скачать: CL | DM;
ВнизПабота с ComboBox Найти похожие ветки
← →
Паша666 (2006-06-24 22:09) [0]Здравствуйте
Суть такая
Необходимо в комбобокс загрузить некий список из файла
В файле в каждой строке стоит
"то что должно отобразиться в комбобоксе"="значение передаваемое в программу при выборе данного элемента комбобокса"
Как правильно и оптимально организовать это ?
Спасибо
← →
Loginov Dmitry © (2006-06-24 22:17) [1]Например с помощью TStringList:
List := TStringList.Create
with List do
begin
LoadFromFile(your_file_name);
for I := 0 to Count - 1 do
ComboBox.Items.Add(Names[I])
end;
← →
Desdechado © (2006-06-24 22:20) [2]если "значение передаваемое в программу при выборе данного элемента комбобокса" - целочисленное, то я би использовал AddObject
Loginov Dmitry © (24.06.06 22:17) [1]
имхо, эффективнее было бы ComboBox.Items.Assign
← →
Паша666 (2006-06-24 22:38) [3]
> если "значение передаваемое в программу при выборе данного
> элемента комбобокса" - целочисленное, то я би использовал
> AddObject
Можно поподробнее и если не трудно кусочек кода.......
Файл вида
Иванов=100
Петров=101
Сидоров=130
Цифра это айди человека
При выборе фамилии человека в комбобоксе например в едите на форме должен выводиться айди человека.....
← →
Desdechado © (2006-06-24 22:41) [4]AddObject позволяет в специальное поле типа Pointer что-то записать
можно сделать так
AddObject( "Иванов", Pointer( 100 ) );
А при выборе узнается код где-то так
n := Integer( combo.items.objects[ combo.itemindex ] );
← →
Паша666 (2006-06-24 23:08) [5]A как из файла данные грузить
Маску делать при загрузке ?
← →
Loginov Dmitry © (2006-06-25 11:53) [6]> имхо, эффективнее было бы ComboBox.Items.Assign
Неужели? А строкуComboBox.Items.Add(Names[I])
видели?
> A как из файла данные грузить
> Маску делать при загрузке ?
Слегка модифицирую [1]:List := TStringList.Create;
with List do
begin
LoadFromFile(your_file_name);
for I := 0 to Count - 1 do
ComboBox.Items.AddObject(Names[I], Pointer(StrToInt(Values[Names[I]])));
Free;
end;
Далее смотреть [4]
← →
Паша666 (2006-06-25 12:18) [7]Спасибо все понял................ :)))
← →
Паша666 (2006-06-27 13:12) [8]Извиняюсь, но выяснилось что значение не соответствует условию
> если "значение передаваемое в программу при выборе данного
> элемента комбобокса" - целочисленное, то я би использовал
> AddObject
Т.е. значение есть текст.
Как быть ?
← →
Loginov Dmitry © (2006-06-27 13:36) [9]> Т.е. значение есть текст.
> Как быть ?
Пример текста???
← →
Паша666 (2006-06-27 13:49) [10]Иванов Иван Иванович=слесарь
← →
Loginov Dmitry © (2006-06-27 14:47) [11]Ясно. Тогда немодифицированный [1]
А при OnSelect вот что:
Str := List.Values[ComboBox.Text];
Страницы: 1 вся ветка
Текущий архив: 2006.07.16;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.013 c