Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.03.21;
Скачать: [xml.tar.bz2];

Вниз

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

 
Делфиец   (2010-01-16 05:35) [0]

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


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

CanFocus?

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


 
oldman ©   (2010-01-16 10:29) [2]

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


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

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

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


 
oldman ©   (2010-01-16 11:20) [4]


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


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


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


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


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


 
turbouser ©   (2010-01-16 11:24) [6]

Хм.. ActiveControl?


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


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


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


 
turbouser ©   (2010-01-16 11:35) [8]


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

SelectNext(ActiveControl,true,true)


 
Leonid Troyanovsky ©   (2010-01-16 12:28) [9]


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

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

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

--
Regards, LVT.


 
DVM ©   (2010-01-16 12:59) [10]


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

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


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


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


Это самый раз


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

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


 
Anatoly Podgoretsky ©   (2010-01-16 14:30) [13]

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

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



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

Форум: "Начинающим";
Текущий архив: 2010.03.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.004 c
1-1234778692
SPeller
2009-02-16 13:04
2010.03.21
Можно ли WideString спокойно использовать вместо String?


15-1262453629
Оно-16
2010-01-02 20:33
2010.03.21
Удаленный помощник удали троян


15-1262278818
qaz
2009-12-31 20:00
2010.03.21
Новогодняя


1-1240936541
Igor2010
2009-04-28 20:35
2010.03.21
JavaScript+IHTMLWindows2


2-1263982266
lewka
2010-01-20 13:11
2010.03.21
Выплывающая подсказка компонента TBitBtn





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский