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

Вниз

Alt+F4   Найти похожие ветки 

 
mao   (2003-06-20 08:11) [0]

Как-то можно отключить срабатывание комбинации клавиш Alt+F4 в своей проге?


 
pod   (2003-06-20 09:04) [1]

Попробуй обработать событие: OnCloseQuery


 
pod   (2003-06-20 09:09) [2]

Ща точто скажу :эм, а вот держи:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose := False;
end;


 
Term   (2003-06-20 09:27) [3]

так он вообще форму не закроет


 
Nucl   (2003-06-20 09:45) [4]

хуком на клаву
или если проще, на главной форме
KeyPreview в True
и на KeyDown отлавливаешь эти клавиши.


 
Karluha   (2003-06-20 10:09) [5]

OnKeyDown попробуй обработать и Key := #0 сделать


 
McSimm2   (2003-06-20 10:12) [6]


procedure TMainFrm.BitBtn2Click(Sender: TObject);
begin
MainFrm.Close;
end;

procedure TMainFrm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if messageDlg("Хотите выйти?",
mtConfirmation,[mbyes,mbno],0)=mryes then
Application.Terminate;
end;

procedure TMainFrm.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=VK_F4) and (ssAlt in Shift)
then Close;
end;


 
McSimm2   (2003-06-20 10:15) [7]

Аа-а-а, её не нужно закрывать.... тады так:

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (ssAlt in Shift) and (Key=VK_F4) then Key:=0;
end;


 
Karluha   (2003-06-20 10:18) [8]

McSimm2 - я може чего не понял, но наверное запрос о закрытии обычно делается в OnCanClose ?
А это:
procedure TMainFrm.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=VK_F4) and (ssAlt in Shift)
then Close;
end;

ПРОИЗВЕДЕНИЕ ИССКУССТВА БЛИН
Зачем делать закрытие формы по Alt-F4, если форма и сама закроется :)


 
Karluha   (2003-06-20 10:19) [9]

Сори. Снимается


 
mao   (2003-06-20 10:23) [10]

Ок. Всем сенкью. Всё получилось. :)


 
McSimm2   (2003-06-20 10:24) [11]

:)


 
pauk   (2003-06-20 18:27) [12]

а исчо можна так:

public
procedure WM_SYSCOMMAND(var Message: TMessage);
Message WM_SYSCOMMAND;

procedure TForm1.WM_SYSCOMMAND(var Message: TMessage);
BEGIN
if message.WParam= 99999 then Exit
else inherited;
end;


 
pauk   (2003-06-20 18:29) [13]

99999 надо разумеется заменить на необходимы код, который можно узнать, если перевести прогу в режим пошагового выполнения и иницировав этот самый Alt+F4


 
pauk   (2003-06-20 18:46) [14]

Кстати, прога не будет закрываться не только по Alt+F4 по всем другим способам. Единственный способ - через диспетчер задач


 
pod   (2003-06-21 03:31) [15]

Первое придложение мне кажется самое пушечное!
Потом ложиш на форму кнопку close на обработчик пишеш скажем

button3.enebled:=true;
close;

А на OnCloseQuery пишеш типа

if button3.enebled:=true then
CanClose := true;




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

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

Наверх





Память: 0.47 MB
Время: 0.007 c
1-7529
noteens
2003-06-09 20:25
2003.07.03
Word+Delphi


1-7457
VID
2003-06-23 10:13
2003.07.03
Второй Clipboard


14-7593
Leo^Sun
2003-06-14 13:10
2003.07.03
Вывод на экран больших чисел


1-7479
Kiril
2003-06-20 22:34
2003.07.03
Insert не вставляет символ 0 , странно...


14-7621
Giemgo
2003-06-17 21:23
2003.07.03
Как бросить курить ?





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