AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ALT + F4 verhindern?

Ein Thema von Pseudemys Nelsoni · begonnen am 3. Mai 2003 · letzter Beitrag vom 4. Mai 2003
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

ALT + F4 verhindern?

  Alt 3. Mai 2003, 06:19
hi,

wie kann ich das verhinden das sich mein prog per alt+f4 schliesst?

Auch in der Taskleiste das schliessen per rechtsklick sollte weg, danke

gruss silent^^
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2
  Alt 3. Mai 2003, 12:31
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action := caNone;
end;
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#3
  Alt 3. Mai 2003, 19:19
hi luckie, danke für deine antwort.
Ich meinte aber eigentlich das es sich noch per button click (close) schliessen lassen können muss, nur per alt f4 und in der taskleiste nicht

geht das?

gruss silent
Mario
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4
  Alt 3. Mai 2003, 19:35
du musst das ganze im OnCloseQuery behandeln

einfach CanClose := False;

und das Programm mit
Application.Terminate;

beenden

mfG
mirage228
David F.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#5
  Alt 3. Mai 2003, 20:17
danke
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6
  Alt 3. Mai 2003, 22:14
Zitat von mirage228:
einfach CanClose := False;
und das Programm mit
Application.Terminate;beenden
Aua. Hast du auch jedes mal von deinem Vater eins mit dem Holzhammer auf den Kopf bekommen, wenn du nicht schlafen konntest?.

Delphi-Quellcode:
var
  bAllowClose : Boolean = FALSE; // global

{...}

procedure Form1.OnCloseQuery(....);
begin
  CanClose := bAllowClose;
end;

procedure Form1.ButtonClick(...);
begin
  bAllowClose := TRUE;
  Close;
end;
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#7
  Alt 4. Mai 2003, 01:11
Moin Luckie,

was ist los?
Mirages Variante funktioniert doch...

Bei Application.Terminate werden doch OnCloseQuery und OnClose des Hauptformulares nicht ausgeführt.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8
  Alt 4. Mai 2003, 04:03
Eben, und das ist das gefährliche denke ich mir.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#9
  Alt 4. Mai 2003, 12:44
Moin Luckie,

Zitat von Luckie:
Eben, und das ist das gefährliche denke ich mir.
stimmt, falls man die Eigenarten von Application.Terminate nicht kennt und somit nicht berücksichtigt.

BTW: Ich würd' dafür keine globale Variable, sondern ein private Feld im Formular verwenden (ggf. als Property veröffentlicht).
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#10
  Alt 4. Mai 2003, 13:15
Moin Zusammen,

es gibt auch noch einen ganz sauberen Weg:
Man schaltet einfach den Menüpunkt ab:

Delphi-Quellcode:
// im OnFormCreate

// Schliessen im Systemmenü des Hauptformulares
  EnableMenuItem(GetSystemMenu(self.Handle,false),SC_CLOSE,MF_BYCOMMAND or MF_GRAYED);
// und auch für die Taskleiste
  EnableMenuItem(GetSystemMenu(Application.Handle,false),SC_CLOSE,MF_BYCOMMAND or MF_GRAYED);
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz