Gedeon |
Отправлено: 20.02.2004, 15:05 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
QType — ADOQuery, возвращающее запрос из двух столбцов Id, Type первый int, второй String, с помощь вот этого кода
CODE |
while(!QType->Eof){
cbFindType->AddItem(QType->FieldByName("Type")->AsString, (TObject*)QType->FieldByName("Id")->AsInteger);
QType->Next();
} |
Заганяю в ComboBox их значения. Это нужно для того, чтобы потом без всяких запросов по выбранному значению в боксе поучать их Id вот так
CODE |
(int)cbFindRubric->Items->Objects[cbFindRubric->ItemIndex];
|
Вопрос: можно ли их как-то туда загнать без цикла?
|
|
Valdemar |
Отправлено: 20.02.2004, 16:43 |
|
Мастер участка
Группа: Участник
Сообщений: 433
|
Я думаю, что без цикла не получится.
А чем вам цикл не нравится? Можете попробовать сделать так:
CODE |
TField *f1,*f2;
f1=QType->Fields->Fields[0];
f2=QType->Fields->Fields[1];
while(!QType->Eof)
{
cbFindType->AddItem(f1->AsString, (TObject*)f2->AsInteger);
QType->Next();
} |
Может чуть-чуть быстрее будет, а может и нет . |
|
Gedeon |
Отправлено: 23.02.2004, 11:36 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
QUOTE (Valdemar @ 20/02/2004, 17:45) | А чем вам цикл не нравится? |
Да вот из-за скорости и не нравится, второй возможный вариант заметной разницы в скорости не дал, что ж придется жертвовать временем загрузки для быстрой работы дальше.
|
|
olegenty |
Отправлено: 24.02.2004, 09:08 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
Хочешь скорость, воспользуйся TRxLookupEdit. В отличие от TLookupComboBox, TRxLookupEdit работает с одним TDataSet, указываемом в LookupSource. Замечу, что он также способен отображать более одной колонки в выпадающем списке. В общем, вещь приятная, аналогов не имеет. Замечу, что скачать RxLib можно прямо тут. Библиотека стара, как мир, но до сих пор остаётся актуальной.
|
|
Gedeon |
Отправлено: 24.02.2004, 09:36 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
QUOTE (olegenty @ 24/02/2004, 10:10) | Библиотека стара, как мир, но до сих пор остаётся актуальной. |
Про нее родимую то я знаю.
Уже есть обновление этой библиотеки, теперь она называется PolarisLibrary, очень много приятных дополнений, находится она тут
PolarisLibrary
|
|
olegenty |
Отправлено: 24.02.2004, 09:45 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
ну вот и пользуйся, или принципиально, чтобы это был именно TComboBox?
|
|
Gedeon |
Отправлено: 24.02.2004, 10:08 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
QUOTE (olegenty @ 24/02/2004, 10:47) | ну вот и пользуйся, или принципиально, чтобы это был именно TComboBox? |
Да нет, просто не хочется пол пректа переделывать, но деваться пожалуй некуда, лучше сейчас, чем спустя пол года, когда юзеры завоют.
|
|