![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск
Клара © (2006-12-12 13:07:00)Процедура поиска через ComboBox1 и Edit.
procedure TForm11.Edit2Change(Sender: TObject);
begin
case ComboBox1.ItemIndex of
0: Form11.ADOtable1.Locate('ID_promoutera',edit2.Text,[loCaseInsensitive,loPartialK ey]);
1: Form11.ADOtable1.Locate('data_akcii',edit2.Text,[loCaseInsensitive,loPartialKey] );
2: Form11.ADOtable1.Locate('kod_TT',edit2.Text,[loCaseInsensitive,loPartialKey]);
end;
end;
Как корректно очисть Edit, после выбора другого поля.
Поля разного типа.
Клара (2006-12-12 15:28:00) [1]
> Elen
В любом случае спасибо.
Elen (2006-12-12 15:24:00) [2]
> Так, что вопросы еще будут.
Не вопрос, только меня не будет полмесяца, так что другие ответят. Удачи.;)
Клара (2006-12-12 15:19:00) [3]
> Elen
Ура работает!!! Ты супер.
Мне завтра сдавать курсовой.
Так, что вопросы еще будут.
Elen (2006-12-12 15:09:00) [4]
> Например?
Вроде этого :
case ComboBox1.ItemIndex of
0:begin if T ryStrToInt(edit2.Text, r) then Form11.ADOtable1.Locate('ID_promoutera',r,[loCaseInsensitive,loPartialKey]);end;
...
end;
Где r - Var параметр типа Integer
Клара (2006-12-12 15:02:00) [5]
> Elen
Например?
Elen (2006-12-12 14:59:00) [6]
> Клара
Возможно. Там нужна проверка на числовость но не везде.
Клара (2006-12-12 14:55:00) [7]Тогда друга ошибка: "is not а valid integer value"
Клара (2006-12-12 14:49:00) [8]
> Elen
Да, при переходе из текстовых на числовые.
Elen (2006-12-12 14:48:00) [9]
> Клара
Тогда, Подозревая какое поля числовые так :
procedure TForm11.Edit2Change(Sender: TObject);
begin
if Edit2.Text<>'' then begin
case ComboBox1.ItemIndex of
0: Form11.ADOtable1.Locate('ID_promoutera', strtoint(edit2.Text),[loCaseInsensitive,loPartialKey]);
1: Form11.ADOtable1.Locate('data_akcii',edit2.Text,[loCaseInsensitive,loPartialKey] );
2: Form11.ADOtable1.Locate('kod_TT', strtoint(edit2.Text),[loCaseInsensitive,loPartialKey]);
end;
Edit2.Text:=''; //или эту строку в процедуру TForm11.ComboBox1Change
end;
Клара (2006-12-12 14:45:00) [10]А если точнее, то "Аргументы имеют неверный тип, выходят за пределы допустимого диапазона или втупают в конфликт с друг другом"
Клара (2006-12-12 14:39:00) [11]
> Savek
Я так и сделала, но когда я переключаю поиск между текстовыми полями - все нормально, а когда после текстового идет числовое, то ошибка: " не совместимость типов".
Savek (2006-12-12 13:26:00) [12]
procedure TForm11.Edit2Change(Sender: TObject);
begin
if Edit2.Text<>'' then begin
case ComboBox1.ItemIndex of
0: Form11.ADOtable1.Locate('ID_promoutera',edit2.Text,[loCaseInsensitive,loPartialK ey]);
1: Form11.ADOtable1.Locate('data_akcii',edit2.Text,[loCaseInsensitive,loPartialKey] );
2: Form11.ADOtable1.Locate('kod_TT',edit2.Text,[loCaseInsensitive,loPartialKey]);
end;
Edit2.Text:=''; //или эту строку в процедуру TForm11.ComboBox1Change
end;
Jeer (2006-12-12 13:13:00) [13]Отлавливать смену ItemIndex, если я правильно стелепатировал.