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

Вниз

Уважаемые мастера! Как по кнопке Esc закрыть окно формы??   Найти похожие ветки 

 
youta   (2006-07-26 12:49) [0]

Уважаемые мастера! Как по кнопке Esc закрыть окно формы??


 
tesseract ©   (2006-07-26 12:54) [1]

procedure TfmEditItem.btNewKeyDown(Sender: TObject; var Key: Word;
 Shift: TShiftState);
begin
if key=VK_ESCAPE then close;
end;


 
youta   (2006-07-26 12:58) [2]

Вы неправильно поняли - как закрыть окно при нажатии клавиши Esc НА КЛАВИАТУРЕ??


 
Desdechado ©   (2006-07-26 13:04) [3]

> НА КЛАВИАТУРЕ
А тебе что, про джойстик написали?
У формы ставишь keyPreview=True и обработчик из [1]


 
youta   (2006-07-26 13:12) [4]

просто tesseract мне написал данный обработчик нажатия на кнопку btNew!!!! а дело все оказалось в keyPreview=True !!!!
Спасибо!!!!!


 
tesseract ©   (2006-07-26 13:14) [5]


> youta   (26.07.06 13:12) [4]


Ну бывает :-)

не учёл что пример будет передран без изменений :-)


 
Ketmar ©   (2006-07-26 13:39) [6]

в следующий раз трижды проверь. а то подсовываешь дезинформацию. народ копипастит -- а оно не работает! издевательство, адназначна.


 
Loginov Dmitry ©   (2006-07-26 15:20) [7]

Еще вариант: использовать список действий TActionList. Создаешь в нем действие, холдишь нужную комбинацию клавиш и ставишь обработчик на OnExecute. Методологически этот вариант более правильный, чем KeyPreview, так как не допускает обработку нажатия горячих клавиш с другими компонентами, а KeyPreview - допускает. Причем некоторые компоненты (TDBGrid, например) обрабатывают сообщения о нажатии клавиш раньше, чем это делает форма при KeyPreview.


 
Desdechado ©   (2006-07-26 15:32) [8]


> обработку нажатия горячих клавиш с другими компонентами,
> а KeyPreview - допускает
Это как настроишь обработку FormKeyDown

> Причем некоторые компоненты (TDBGrid, например) обрабатывают
> сообщения о нажатии клавиш раньше, чем это делает форма
> при KeyPreview.
DBGrid не ведет себя подобным образом. Какие еще компоненты под подозрением?


 
Loginov Dmitry ©   (2006-07-26 19:06) [9]

> DBGrid не ведет себя подобным образом


Ведет.

Недавно хотел сделать фичу: чтобы для выделенной ячейки DBGrid при нажатии Space происходило выделение текста (InplaceEditor.SelectAll). Однако ввод символа пробела в ячейку происходит еще до возникновения OnKeyXXX формы.


 
tesseract ©   (2006-07-26 21:59) [10]

> [9] Loginov Dmitry ©   (26.07.06 19:06)

Гм. бывает при редактировании в гриде, по моему придёться два раза ESC нажать.



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

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

Наверх




Память: 0.46 MB
Время: 0.04 c
15-1156107099
Владимир_мпп
2006-08-21 00:51
2006.09.10
Часовой пояс?


2-1156272009
anton773
2006-08-22 22:40
2006.09.10
Shellexecute


5-1138111947
Creative
2006-01-24 17:12
2006.09.10
обработчик onKeyDown


9-1134888099
CrZarkon*
2005-12-18 09:41
2006.09.10
Milkshape


15-1155565213
PSPF2003
2006-08-14 18:20
2006.09.10
Российский сайт





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский