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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как закрыть форму нажимая ESC? 
:(
    Опции темы
Paata1234
Дата 13.9.2006, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 16.8.2006

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



сделал форму.
Убрал у нее все кнопки хачу что после нажатие ESC форма закривалас
PM MAIL   Вверх
ivashkanet
Дата 13.9.2006, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 11
Всего: 149



Код

        private void Form1_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Escape)
            {
                this.Close();
            }
        }


P.S. Пытался повеститься на KeyPressed, а у него аргументы кривые smile
PM MAIL WWW ICQ   Вверх
reloni
Дата 13.9.2006, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 10.5.2006
Где: Москва

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



Цитата(ivashkanet @  13.9.2006,  12:08 Найти цитируемый пост)
P.S. Пытался повеститься на KeyPressed, а у него аргументы кривые  

Код

    private void Form1_KeyPress(object sender, KeyPressEventArgs e)
    {
        if (e.KeyChar == (char)Keys.Escape)
            this.Close();
    }

smile
PM MAIL ICQ   Вверх
ivashkanet
Дата 13.9.2006, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 11
Всего: 149



reloni, Так я ж не спорю. Так можно. Но для других аргументы получше smile
Отлавливают Alt, Ctrl, ...
И еще куча разной инфы smile
PM MAIL WWW ICQ   Вверх
reloni
Дата 13.9.2006, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 10.5.2006
Где: Москва

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



ivashkanet, ну это просто еще один способsmile
PM MAIL ICQ   Вверх
Paata1234
Дата 13.9.2006, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 16.8.2006

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



По кароче нелзиа? какои нибуд Property вклиучит?
PM MAIL   Вверх
reloni
Дата 13.9.2006, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 10.5.2006
Где: Москва

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



Paata1234, две строчки кода, куда короче? Проперти не подойдет, обрабатывать событие ведь все равно надо.
PM MAIL ICQ   Вверх
ivashkanet
Дата 14.9.2006, 08:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 11
Всего: 149



Paata1234, можно smile

Код

public class ХитрыйФорм : Form
    {
        private bool _закыватьПоEsc = false;

        [DefaultValue(false)]
        public bool ЗакрыватьПоEsc
        {
            get { return _закыватьПоEsc ; }
            set { _закыватьПоEsc  = value; }
        }

        public ХитрыйФорм():base()
        {
            this.KeyPress += new KeyPressEventHandler(ХитрыйФорм_KeyPress);
        }

        void ХитрыйФорм_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (_закыватьПоEsc)
            {
                if (e.KeyChar == (char)Keys.Escape)
                    this.Close();    
            }
        }

    }


Теперь наследуемся от этой формы, выставляем пропертю ЗакрыватьПоEsc в tue и в путь.


P.S. Это конечно все шутка (хоть и рабочая)  smile  
PM MAIL WWW ICQ   Вверх
Exception
Дата 14.9.2006, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 5
Всего: 186



Paata1234, давай будем писать на русском языке smile . Так проще общаться.
PM   Вверх
kobra
Дата 15.9.2006, 09:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 15.6.2005
Где: Грузия, Тбилиси

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



Цитата(Exception @  14.9.2006,  17:55 Найти цитируемый пост)
Paata1234, давай будем писать на русском языке  smile  . Так проще общаться.

судья по имени, он пишет на грани своих возможностеи, так что будте снисходительни.

Это сообщение отредактировал(а) kobra - 15.9.2006, 09:07
PM MAIL   Вверх
registered
Дата 15.9.2006, 19:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 30.8.2006

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



Цитата(ivashkanet @  14.9.2006,  08:37 Найти цитируемый пост)
Теперь наследуемся от этой формы, выставляем пропертю ЗакрыватьПоEsc в tue и в путь.


P.S. Это конечно все шутка (хоть и рабочая)     

вроде привык к этому, но все равно прет как увижу подобное smile smile smile

Добавлено @ 19:16 
P.S. всегда задавался вопросом как бы выгледяли наши программы, если бы мы писали по-русски smile (хотя англоязычное население наверное воспринимает это как нормальное явление)

Код

если (это < того)
{
    ну_типа_выйти;
}


smile



Это сообщение отредактировал(а) registered - 15.9.2006, 19:17
PM MAIL   Вверх
vitovt
Дата 6.10.2006, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 3.10.2006

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



Это все хорошо, когда фокус на форме. А что, если фокус на textBox'е? Только умоляю, не надо говорить что-то вроде "Написать для каждого textBox'a, button'a, listBox'a...........". Можно ли как-нибудь глобально?
PM MAIL   Вверх
mr.DUDA
Дата 6.10.2006, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


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

Репутация: 24
Всего: 232



Цитата(vitovt @  6.10.2006,  17:37 Найти цитируемый пост)
Можно ли как-нибудь глобально?

Перечислить все контролы в OnLoad-е и повеситься на их KeyDown... Сам так делаю smile


--------------------
user posted image
PM MAIL WWW   Вверх
Paata1234
Дата 9.10.2006, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 16.8.2006

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



Извиняус но Я не пишу на грани своих возможностеи!

В Проперти форме нада присвоит KeyPreview = TRUE и все kbd message от контроля паидут в форме
PM MAIL   Вверх
Yama
Дата 26.11.2006, 03:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 167
Регистрация: 2.8.2006

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



Цитата(ivashkanet @ 14.9.2006,  08:37)
Paata1234, можно smile

Код

public class ХитрыйФорм : Form
    {
        private bool _закыватьПоEsc = false;

        [DefaultValue(false)]
        public bool ЗакрыватьПоEsc
        {
            get { return _закыватьПоEsc ; }
            set { _закыватьПоEsc  = value; }
        }

        public ХитрыйФорм():base()
        {
            this.KeyPress += new KeyPressEventHandler(ХитрыйФорм_KeyPress);
        }

        void ХитрыйФорм_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (_закыватьПоEsc)
            {
                if (e.KeyChar == (char)Keys.Escape)
                    this.Close();    
            }
        }

    }


Теперь наследуемся от этой формы, выставляем пропертю ЗакрыватьПоEsc в tue и в путь.


P.S. Это конечно все шутка (хоть и рабочая)  smile

+1 !!! жжешь! зачет! smile  smile  я такого жавно не видел !!!!=)))   smile  smile 
--------------------
Если бы строители строили дома так же, как программисты пишут программы, то первый же залетевший в форточку дятел разрушил бы всю нашу цивилизацию.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

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


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

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


 




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


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

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