Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.31;
Скачать: CL | DM;

Вниз

Поиск   Найти похожие ветки 

 
Клара   (2006-12-12 13:07) [0]

Процедура поиска через 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, после выбора другого поля.
Поля разного типа.


 
Jeer ©   (2006-12-12 13:13) [1]

Отлавливать смену ItemIndex, если я правильно стелепатировал.


 
Savek   (2006-12-12 13:26) [2]


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;


 
Клара   (2006-12-12 14:39) [3]


> Savek

Я так и сделала, но когда я переключаю поиск между текстовыми полями - все нормально, а когда после текстового идет числовое, то ошибка: " не совместимость типов".


 
Клара   (2006-12-12 14:45) [4]

А если точнее, то "Аргументы имеют неверный тип, выходят за пределы допустимого диапазона или втупают в конфликт с друг другом"


 
Elen ©   (2006-12-12 14:48) [5]


> Клара

Тогда, Подозревая какое поля числовые так :

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:49) [6]


> Elen

Да, при переходе из текстовых на числовые.


 
Клара   (2006-12-12 14:55) [7]

Тогда друга ошибка: "is not а valid integer value"


 
Elen ©   (2006-12-12 14:59) [8]


> Клара

Возможно. Там нужна проверка на числовость но не везде.


 
Клара   (2006-12-12 15:02) [9]


> Elen

Например?


 
Elen ©   (2006-12-12 15:09) [10]


> Например?

Вроде этого :
case ComboBox1.ItemIndex of
0:begin if TryStrToInt(edit2.Text, r) then Form11.ADOtable1.Locate("ID_promoutera",r,[loCaseInsensitive,loPartialKey]);end;
...
end;

Где r - Var параметр типа Integer


 
Клара   (2006-12-12 15:19) [11]


> Elen

Ура работает!!! Ты супер.
Мне завтра сдавать курсовой.
Так, что вопросы еще будут.


 
Elen ©   (2006-12-12 15:24) [12]


> Так, что вопросы еще будут.

Не вопрос, только меня не будет полмесяца, так что другие ответят. Удачи.;)


 
Клара   (2006-12-12 15:28) [13]


> Elen

В любом случае спасибо.



Страницы: 1 вся ветка

Текущий архив: 2006.12.31;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.041 c
2-1165830912
Филон
2006-12-11 12:55
2006.12.31
текст


15-1165957334
Terre
2006-12-13 00:02
2006.12.31
Out of memory


2-1165740873
Начинающий5
2006-12-10 11:54
2006.12.31
TEDIT


2-1165902757
Mazer
2006-12-12 08:52
2006.12.31
Тренажор на клавиатуре по печатанию в слепую


2-1165827629
Peter Kapustin
2006-12-11 12:00
2006.12.31
Dll + форма