Войти

Показать полную графическую версию : C#.NET&&обработка нажатия клавиш


bezumes
21-10-2006, 13:11
Здравствуйте.Помогите мне пожалуйста вот с чем:есть форма при нажатии SHIFT+e должно приложение закрываться.Я написал вот такой код

protected override void OnKeyDown(KeyEventArgs e)
{
Keys keysmod = Control.ModifierKeys;
if (keysmod == Keys.Shift)
{
if (e.KeyCode == Keys.E)
{
DialogResult res = MessageBox.Show("Вы действительно хотите выйти", "Выход", MessageBoxButtons.YesNo);
if (res == DialogResult.Yes) Application.Exit();
}
}
}

Все нормально если форма пустая.но если там я создаю скажем кнопку


public program()
{
//создаем меню
menu();
//добавляем кнопку
Button b1 = new Button();
b1.Parent = this;
b1.Text = "?";
b1.Click += new EventHandler(b1_Click);
}
То ничего не происходит.

bezumes
21-10-2006, 22:16
Всего-то надо было написать в начале this.KeyPreview = true; и все тогда у меня заработало.

Cesc
28-01-2008, 15:22
Что надо прописать в консольном приложении на C#,чтобы при запуске на исполнение прога выполнялась,но ждала толи нажатия любой клавиши,толи какое-то время не закрывалась.

Admiral
28-01-2008, 15:42
Будет ждать пока не нажмёт юзер клавишу
Console.ReadLine();

Cesc
28-02-2008, 13:29
Как можно определять устройства на компе на C#?Желательно все,типа проги Everest,которая определяет даже неопознаные устройства.

Admiral
29-02-2008, 00:51
.NET - Diving into System Programming - Part 1 By Vladimir Afanasyev (http://www.codeproject.com/KB/system/divingsysprog1.aspx)
Работает через Win32 (commonly obtained as a result of execution of Win32 API functions) так как в .NET платформе нет универсальных функции, что б она работала как и под мобилой так и под компом.




© OSzone.net 2001-2012