Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

enter [D5, XP]


mrAndersen ©   (2006-03-20 23:52:00) 

На форме есть Edit1, Button1.
Мне нужно чтобы при вводе некого слова в Edit1 нажималась кнопка Button1. Но при этом не сразу произошло нажатие кнопки Button1, а только после нажатия на ENTER.
То есть, я ввожу в Edit1 слово «катя», и сразу же происходит нажатие на клавишу Button1, а мне нужно только тогда когда я наберу «катя» и нажму ENTER.
За ранние благодарен за любые предоставленные ответы.


Zeqfreed   (2006-03-22 05:23:00) [1]

[9] mrAndersen ©   (22.03.06 03:23)
Обработчик OnKeyDown Edit'а надо создать. И в нем уже этот код писать.


mrAndersen   (2006-03-22 03:27:00) [2]

может какие то модули нада подключить


mrAndersen   (2006-03-22 03:23:00) [3]

У меня ошибки выскакивают при реализации этого кода:

procedure MyForm.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
begin
 If Edit1.Text = 'katya' then
  Button1Click(Self); //или выполнить, типа, какую-либо проверку
end;
end;

просит убрать точку после «procedure MyForm», после того как я убираю точку, не хочет восприниматься ни  Edit1.Text ни Button1Click, то есть пишет:
[Error] Unit1.pas(32): Undeclared identifier: 'Edit1'
Что делать?


ASoft   (2006-03-21 09:22:00) [4]

млин повторился, наверное, не видел
> http://www.delphimaster.ru/cgi-bin/forum.pl?id=1142873793&n=18


ASoft   (2006-03-21 09:20:00) [5]

может так?
....

procedure MyForm.Edit1KeyDown(Sender: TObject; var Key: Word;
 Shift: TShiftState);
begin
if key=13 then
 begin
  If Edit1.Text = 'katya' then
   Button1Click(Self); //или выполнить, типа, какю-либо проверку
 end;
end;


EvS   (2006-03-21 09:14:00) [6]

тебе уже ответили
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1142873793&n=18
что непонятно?


mrAndersen   (2006-03-21 03:03:00) [7]


> обработчик onkeydown d у Edit

Пожалуйста, поподробнее. Буду весьма благодарен, за любой пример.


ASoft   (2006-03-21 02:59:00) [8]

обработчик onkeydown d у Edit


mrAndersen   (2006-03-21 02:56:00) [9]

Частично правильно, но данный пример переводит фокус на Button1 и тогда при нажатии на ENTER производятся действия. А если нету кнопки Button1. То есть, мне нужно само нажатия, как бы, подтверждения того что я ввел именно «катя», а не, например «катясх».


API   (2006-03-21 02:51:00) [10]

Button1.Default := true;

procedure TForm1.OnButton1Click(Sender: TObject);
begin
 if (Edit1.Text = 'katya') then
 begin
   // действия
 end;
end;


Luarv   (2006-03-20 23:55:00) [11]

Вставить в edit1.onchange
if edit1.text='katya' then button1.setfocus;
Оно?


Наверх

Титульная страница Поиск, карта сайта Написать письмо