Вниз
Скачать: CL | DM;

Закрытие формы при нажатии ESC   Найти похожие ветки 

← →
ser35   (2005-03-14 10:52) [0]

Хочу, чтобы при нажатии клавиши закрылась форма. Сделал так:
procedure TForm13.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#27 then Form13.Close;  //Если эскейп, то закрываю
end;
Не закрывается. Подскажите ошибку


← →
Плохиш ©   (2005-03-14 10:57) [1]

Убрать Form13


← →
begin...end ©   (2005-03-14 10:58) [2]

procedure TMyForm.FormKeyDown(Sender: TObject; var Key: Word;
 Shift: TShiftState);
begin
 if key = VK_ESCAPE then Close
end


И не забудьте свойство KeyPreview формы установить в True.


← →
wicked ©   (2005-03-14 10:58) [3]

procedure TForm13.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if key=VK_ESCAPE then Close;  //Если эскейп, то закрываю
end;


← →
Anatoly Podgoretsky ©   (2005-03-14 11:05) [4]

Зачем?
Есть же соответсвующие свойства у кнопок, вот его надо и установить, а код выкинуть.


← →
XP   (2005-03-14 11:09) [5]

Есть же соответсвующие свойства у кнопок, вот его надо и установить, а код выкинуть.

Не всякая форма имеет кнопки (TButton и иже с ними).


← →
Anatoly Podgoretsky ©   (2005-03-14 11:17) [6]

А не надо издеваться над пользователем.
Если нет, то добавить, нормальная форма должна иметь две кнопки - Отмена и Нормально завершение.


← →
ser35   (2005-03-14 11:19) [7]

Спасибо за советы!!!


← →
XP   (2005-03-14 11:34) [8]

...нормальная форма должна иметь две кнопки - Отмена и Нормально завершение.

Жаль только, что ни в Microsoft, ни в Borland этого не знают. А то обязательно разместили бы на каждую форму эти "две кнопки". Пока додумались только до "Закрыть" в верхнем правом углу формы.


← →
TUser ©   (2005-03-14 12:04) [9]

ActionList


← →
Anatoly Podgoretsky ©   (2005-03-14 12:17) [10]

XP   (14.03.05 11:34) [8]
Странные у тебя формы от Microsoft и Borland, у меня с кнопками, там где ввод или какие действия не предусмотренны, там одна кнопка. Я пытался вспомнить хоть одну форму без кнопок - не смог.


← →
Gero ©   (2005-03-14 12:21) [11]


> Я пытался вспомнить хоть одну форму без кнопок - не смог.

Debug Windows, например.
Да и форма может быть главной и закрываться при нажатии Esc.
Тогда, конечно, применяют другие методы, но все же.


← →
XP   (2005-03-14 12:33) [12]

Я пытался вспомнить хоть одну форму без кнопок - не смог.

Это как-то называется. Только вот как? Не могу вспомнить.
А по поводу двух кнопок - пытался найти в окне Internet Explorer, окнах документов Word, Excel, в Проводнике, опять же, кнопки "Отмена" и "Нормальное завершение" - не нашел.
Есть только "Закрыть" в все том же правом верхнем углу, да еще "Закрыть" в меню, которое дублирует кнопку.
Может, в этих программах не предусмотрены действия или ввод?
Ну, тогда другое дело...

P.S. Дайте салфетку - очки протру, что ли?
P.P.S. Повторюсь: не всякая форма имеет кнопки (TButton и иже с ними).


← →
Чапаев ©   (2005-03-14 13:17) [13]

> P.P.S. Повторюсь: не всякая форма имеет кнопки (TButton и иже с ними).
Не всякая форма закрывается по Esc.


← →
XP   (2005-03-14 13:26) [14]

Не всякая форма закрывается по Esc.

В контексте данной ветки - закрывается по Esc, потому что автор так написал: "Хочу".
И о кнопках не сказал ничего. Ну совершенно ничего.


← →
Gero ©   (2005-03-14 14:14) [15]


> автор так написал: "Хочу"

А автору намекнули, что, скорее всего, у него неверно реализован пользовательский интерфейс.



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.023 c
1-1110533012
AlexTregubov
2005-03-11 12:23
2005.03.27
Как узнать тип шрифта - TrueType или OpenType?


9-1104873227
Tankist
2005-01-05 00:13
2005.03.27
Как менять гамму в Direct3D


14-1110195108
MU
2005-03-07 14:31
2005.03.27
FreeVCS ->JediVCS


4-1108551494
DeskTop
2005-02-16 13:58
2005.03.27
Как определить путь к рабочему столу


4-1108131235
NikNet
2005-02-11 17:13
2005.03.27
Как мне узнать имя процесса по его Handel Я использую PSAPI.DLL




   Наверх