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

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

Есть ли метод оперделения какой контрол в фокусе


Делфиец ©   (2010-01-16 05:35:00) 

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


Anatoly Podgoretsky   (2010-01-16 14:30:00) [1]

> Делфиец  (16.01.2010 05:35:00)  [0]

Естественно есть, но только не метод, а свойство ActiveControl


Делфиец   (2010-01-16 13:25:00) [2]

Можно и по Tab, но на форме разные контролы TEdit, TbitBtn, TCmboBox табом неудобно, так ка нужно пропускать кучу контролов, которые не нужны для ввода, а исключить их вообще из TabStop тоже нехорошо. так что переход по "интеру" самое то.


Делфиец   (2010-01-16 13:15:00) [3]


> turbouser ©   (16.01.10 11:24) [6]
> Хм.. ActiveControl?


Это самый раз


DVM   (2010-01-16 12:59:00) [4]


> Не надо извращений, жми Tab.

ну почему сразу извращение? Переход по Enter очень удобен при заполнении множества полей. Получается похоже на таблицу Excel


Leonid Troyanovsky   (2010-01-16 12:28:00) [5]


> Делфиец   (16.01.10 11:22) [5]

> после нажатия Enter надо перейти на соседний контрол ввода

Не надо извращений, жми Tab.

--
Regards, LVT.


turbouser   (2010-01-16 11:35:00) [6]


> Делфиец   (16.01.10 11:22) [5]
>
>

SelectNext(ActiveControl,true,true)


oldman   (2010-01-16 11:29:00) [7]


> Делфиец   (16.01.10 11:22) [5]


Правильно выставить их в списке и все.
По Tab они правильно перескакивают?
Если да, подмени Tab Ентером.


turbouser   (2010-01-16 11:24:00) [8]

Хм.. ActiveControl?


Делфиец   (2010-01-16 11:22:00) [9]


> oldman ©   (16.01.10 10:29) [2]
> Никак не могу придумать задачу, для решения которой ЭТО
> понадобится...


"Элементарно просто др. Ватсон" на форме много контролов для ввода, после нажатия Enter надо перейти на соседний контрол ввода,  но на каждый контрол писать процедуру неохота. У формы есть обработчик onFormKeyPress черезнего ловим нажатие Enter if Key = #13 thenу всей формы, осталось дело за малым узнать только какой контрол в фокусе и передать фокус другому контролу. Думаю, что такой-нибудь метод   function GetFocusControl: TObect;не помешал бы.


oldman   (2010-01-16 11:20:00) [10]


> TIF ©   (16.01.10 11:14) [3]
> Может отображение подсказки около контрола, который находится
> в фокусе?


При получении фокуса контрол передает функции подсказки свои координаты, функция выводит подсказку. Поиск не нужен.


TIF   (2010-01-16 11:14:00) [11]

> придумать задачу, для решения которой ЭТО понадобится...

Может отображение подсказки около контрола, который находится в фокусе?


oldman   (2010-01-16 10:29:00) [12]

Никак не могу придумать задачу, для решения которой ЭТО понадобится...


Ололо   (2010-01-16 08:08:00) [13]

CanFocus?

другого помоему нет


Наверх

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