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

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

Переход по TEdit - ам с помощью Enter [D6, Win95/98]


AlexFe ©   (2004-07-23 12:32:00) 

На форме множество Edit как правильно переходить по ним при нажатии Enter .(желательно только по тем которые могут быть в фокусе) Обрабатывать KeyPress каждого эдита как-то
неприлично.


vecna   (2004-07-23 16:57:00) [1]

вообще, enter по идее должен быть аналогом клика по кнопке ок, так же как esc - по кнопке cancel, так же как пререход - tab'ом. это стандарт!


s999   (2004-07-23 14:45:00) [2]

Обрабатывай KeyDown формы при (КеуPreview = True)

Посмотри:
 TWinControl.FindNextControl(CurControl: TWinControl;   GoForward, CheckTabStop, CheckParent: Boolean): TWinControl;

To Rem:
 Не все же левши, как ты и Билл Гейтс.


AlexFe   (2004-07-23 14:28:00) [3]

Mim1 >
Иметтся в виду количество обработчиков KeyPress каждого Edita.
Rem >
Насчет переучивания, так это для свох делается(почти угадал на счет  Бухгалтеров)


Rem   (2004-07-23 14:09:00) [4]

Бухгалтера - очень неприличные люди. Когда смотришь, как у них рука к Enter'у тянется, возникает ощущение, что у всех них богатейший опыт работы в DOS'е.

Tab - на то и Tab, чтобы ходить между контролами. Это встроенная функция Windows.

Переучивать надо таких пользователей, а не подстраиваться под них!


Mim1   (2004-07-23 13:36:00) [5]


> [9] AlexFe   (23.07.04 13:06)

А какое отношение имеет красота к количеству эдиток в контексте этого овпроса?
Хотя 40 эдитов на форме действительно некрасиво.


AlexFe   (2004-07-23 13:06:00) [6]

Anatoly Podgoretsky
Не смешно если эдитов приблизительно 40 штук
получается очень некрасиво.


Anatoly Podgoretsky   (2004-07-23 13:00:00) [7]

Переходить по TEdit - ам с помощью Enter неприлично, хоть и можно.


AlexFe   (2004-07-23 12:41:00) [8]

Jeer
Большое спасибо, обязательно попробую.


Jeer   (2004-07-23 12:39:00) [9]

Из RX

procedure TCurrencyEdit.KeyPress(var Key: Char);
var
  MYForm: TCustomForm;
begin
if EntAsTab then
 begin
   if Key = #13 then
   begin
     MYForm := GetParentForm( Self );
     if not (MYForm = nil ) then
       SendMessage(MYForm.Handle, WM_NEXTDLGCTL, 0, 0);
     Key := #0;
   end;  
end;
if Key <> #0 then inherited KeyPress(Key);
end;  { TCurrencyEdit.KeyPress }


AlexFe   (2004-07-23 12:38:00) [10]

Как указать следующий едит? и предыдущий.
Я понимаю что это скорее всего просто но
пока сие мне не дано.


Reindeer Moss Eater   (2004-07-23 12:36:00) [11]

Каким образом?

Ты хочешь сам написать, или просто не знаешь, что на сайте есть статьи, поиск и faq?


Jeer   (2004-07-23 12:35:00) [12]

Расширить возможности TEdit, создав потомок с нужной функциональностью.


AlexFe   (2004-07-23 12:35:00) [13]

Каким образом?


Reindeer Moss Eater   (2004-07-23 12:34:00) [14]

Обрабатывать KeyPress каждого эдита как-то
неприлично.


Обрабатывай у формы на которой они лежат.


Наверх

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