Форум: "Начинающим";
Текущий архив: 2010.02.21;
Скачать: [xml.tar.bz2];
ВнизComboBox и дополнительное поле Найти похожие ветки
← →
TRSteep © (2009-12-14 13:45) [0]В ComboBox вносятся текстовые поля, у каждого поля есть дополнительный цифровой параметр.
Есть ли какие то стандартные методы хранения этого поля?
Например
2 Поле
4 Лес
7 Поляна
9 Лес
Т.е. текстовые поля могут повторятся.
Пока в голову приходит мысль только создать 2 динамических массива
и заносить и выбирать поле в combobox по порядковой позиции в массиве
← →
RWolf © (2009-12-14 13:49) [1]Objects[]
← →
RWolf © (2009-12-14 13:52) [2]пример:
ComboBox1.AddObject("строка",Pointer(42));
ShowMesage(IntToStr(Integer(ComboBox1.Items.Objects[0])));
← →
TRSTeep © (2009-12-14 14:11) [3]Я так понимаю ComboBox.Items.Objects, а как его использовать?
Не нашел примера в справке.
← →
TRSTeep © (2009-12-14 14:12) [4]о! пока искал уже написали пример - спасибо!
← →
Leonid Troyanovsky © (2009-12-14 22:02) [5]
> TRSteep © (14.12.09 13:45)
> В ComboBox вносятся текстовые поля, у каждого поля есть
> дополнительный цифровой параметр.
> Есть ли какие то стандартные методы хранения этого поля?
Цифровой vs аналоговый?
Хотя, в любом случае, стандартных нет.
Однако, для любых случаев полезен стиль csOwnerDraw*&etc.
> Пока в голову приходит мысль только создать 2 динамических
> массива
> и заносить и выбирать поле в combobox по порядковой позиции
> в массиве
Почему 2?
Почему по порядковой?
> Не нашел примера в справке.
А он и не спасет ОРД, если исходная постановка верна.
--
Regards, LVT.
← →
Германн © (2009-12-15 00:41) [6]
> Leonid Troyanovsky © (14.12.09 22:02) [5]
Как-то мне нужно было хранить в TCheckListBox помимо самих строк ещё и 3 числа. Я бы пошел через использование Objects, но была задача иметь возможность сортировки строк по значениям этих чисел. И самым простым оказался путь через OwnerDraw.
← →
KilkennyCat © (2009-12-15 08:53) [7]хранение через OwnerDraw? Как прекрасен и удивителен этот мир, полный любви т. д....
← →
TRSteep © (2009-12-18 11:02) [8]
> Почему 2?
> Почему по порядковой?
2 потому что первый содержит ID, второй под тем же порядковым номером String
реализвать проще чем один с двумя вложенными.
> И самым простым оказался путь через OwnerDraw
Не знаю даже что это :)
а вообще задача решилась благодаря первому примеру:
ввод
ZQuery.SQL.Text := "SELECT * FROM " + ZConnection.Database + ".Member";
ZQuery.Open;
cbb_Contact.Items.Clear;
while not ZQuery.eof do
begin
cbb_Contact.items.AddObject(ZQuery.fieldbyname("Member_Surname").AsString,
Pointer( ZQuery.fieldbyname("Member_ID").AsInteger ));
ZQuery.next;
end;
ZQuery.SQL.Clear;
ZQuery.Close;
и вывод:Integer(cbb_Contact.Items.Objects[cbb_Contact.itemindex])
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.02.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.014 c