Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как узнать сфокусированный контрол формы? 
:(
    Опции темы
stab
Дата 28.6.2006, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

Репутация: 1
Всего: 48



сабж 


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
Mad
Дата 28.6.2006, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Эксперт
Сообщений: 656
Регистрация: 18.10.2004
Где: Одесса

Репутация: нет
Всего: 19



пробежаться по коллекции Controls и проверять свойство Focused
Код

Control GetFocusedControl()
{
    Control ret = null;
    foreach(Control ctl in this.Controls)
    {
        if (ctl.Focused)
        {
            ret = ctl;
            break;
        }
    }
    return ret;
}
 


--------------------
user posted image
PM MAIL   Вверх
stab
Дата 28.6.2006, 13:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

Репутация: 1
Всего: 48



так там в Controls только дети, детей детей нет. вы меня простите, я сегодня туплю, ну не могу с рекурсией совладать  никак smile  smile  


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
Mad
Дата 28.6.2006, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Эксперт
Сообщений: 656
Регистрация: 18.10.2004
Где: Одесса

Репутация: нет
Всего: 19



Код

Control GetFocusedControl(Control parent)
{
    Control ret = null;
    foreach(Control ctl in parent.Controls)
    {
        if (ctl.Focused)
        {
            ret = ctl;
            break;
        }
        ret = GetFocusedControl(ctl);
        if (ret != null)
            break;
    }
    return ret;
}

// в методе формы
Control focused = GetFocusedControl(this);

 


--------------------
user posted image
PM MAIL   Вверх
stab
Дата 28.6.2006, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

Репутация: 1
Всего: 48



за код спасибо, идентичен моему и не работает, похоже проблема не в коде, а в том, что фокус как-то хитро обрабатывается некоторыми контролами  smile  


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0435 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.