Basilak |
Отправлено: 10.01.2005, 02:33 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 5
|
Существует DBComboBox заполняемый из таблицы:
while (!Table1->Eof)
{
DBComboBox1->Items->Add(Table1Field1->AsString);
Table1->Next();
}
DBComboBox1->Items->Add("другой...");
Чтобы Юзеp не смог испpавить существующие записи, ставлю Style = csDropDownList.
Но нужно, чтобы пpи выбоpе "другой..." можно было заносить в таблицу новую запись. Пишу:
void __fastcall TForm1::DBComboBox1Change(TObject *Sender)
{
if (DBComboBox1->ItemIndex == DBComboBox1->Items->Count-1)
{
DBComboBox1->Style = csDropDown;
}
else
{
DBComboBox1->Style = csDropDownList;
}
}
После ввода пеpвого символа пpогpамма совеpшает недопустимую ошибку. |
|
Bond |
Отправлено: 11.01.2005, 15:11 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 142
|
Лучше использовать DBLookupComboBox:
1) не нужно вручную обновлять из таблицы;
2) автоматически будет вставлять ключевое значение в целевую таблицу.
|
|
Bond |
Отправлено: 11.01.2005, 15:15 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 142
|
Извини, не совсем понял вопрос
|
|