AGB  ·  Datenschutz  ·  Impressum  







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

Programm Beenden

Ein Thema von derseitzer · begonnen am 12. Okt 2016 · letzter Beitrag vom 12. Okt 2016
Antwort Antwort
derseitzer

Registriert seit: 12. Okt 2016
235 Beiträge
 
Delphi 10 Seattle Professional
 
#1

Programm Beenden

  Alt 12. Okt 2016, 09:14
Guten Tag ich habe eine Frage,

Ich habe ein Programm geschrieben, das kein Formular benötigt. Somit habe ich es auf "false" gesetzt und mein Programm läuft einwandfrei.
Jetzt möchte ich mein Programm per Tastendruck (durch F7) schließen. Ich habe es mit diesem Code probiert:

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if key = vk_F7 then application.terminate;
end;
Ich habe es auch außerhalb von Delphi probiert, mit F7 zu schließen, aber vergebens. Ich denke das Problem liegt daran, dass mein Programm keinen Fokus hat, da es kein Formular hat, aber sicher bin ich mir nicht. Hat jemand einen Tipp oder Lösungsvorschlag?

Geändert von mkinzler (12. Okt 2016 um 10:22 Uhr) Grund: Delphi-Tag eingefügt
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.800 Beiträge
 
Delphi 12 Athens
 
#2

AW: Programm Beenden

  Alt 12. Okt 2016, 09:19
Äh...wenn Du kein Formular benötigst/hast, woher kommt dann TForm1? Woher soll eigentlich Dein formularloses Programm Dein F7 bekommen? Und wo hast Du wem "False" gesagt? Es gibt nur eine Möglichkeit ein "formularloses" Programm zu erstellen, und zwar als Konsolenanwendung. Ausserdem ist Standard für eine Windows anwendung, daß diese per Alt+F4 geschlossen wird, wozu einen neuen Shortcut erfinden, Anwender schätzen sowas gar nicht?

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#3

AW: Programm Beenden

  Alt 12. Okt 2016, 09:55
Erkläre mal, wie Dein Programm funktioniert und was Du machst. Ansonsten kann ich mich Sherlock nur anschließen. Wie es hier steht, ergibt das Ganze nicht viel Sinn...

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Whookie

Registriert seit: 3. Mai 2006
Ort: Graz
445 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Programm Beenden

  Alt 12. Okt 2016, 10:14
Wenn du deine MainForm nicht anzeigst, dann solltest du vielleicht überlegen ein Tray-Icon mit einem Menü einzubauen. Darüber kann das Program dann beendet werden.
Whookie

Software isn't released ... it is allowed to escape!
  Mit Zitat antworten Zitat
derseitzer

Registriert seit: 12. Okt 2016
235 Beiträge
 
Delphi 10 Seattle Professional
 
#5

AW: Programm Beenden

  Alt 12. Okt 2016, 10:44
Tut mir Leid, das ich eventuell Code verschwiegen habe

Ich habe tatsächlich eine Form allerdings habe ich diese eben mit Application.ShowMainForm:= false; unterdrückt.
Mein Programm zeichnet eigentlich nur Linien mit Canvas Befehlen, deshalb benötige ich eben keine Form und ich möchte das Programm eben mit einem Tastendruck beenden können.
Das mit dem Trayicon werde ich mir anschauen, ich bin noch relativ unerfahren im programmieren mit Delphi Aber danke erstmal!
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#6

AW: Programm Beenden

  Alt 12. Okt 2016, 11:26
Einen Tastendruck kannst Du i.A. nur abfangen, wenn das Programm auch den Fokus hat, sprich, wenn das Programm ein Formular hat und auch dargestellt und aktiv ist. Ansonsten musst Du Dir einen anderen Weg suchen.

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
derseitzer

Registriert seit: 12. Okt 2016
235 Beiträge
 
Delphi 10 Seattle Professional
 
#7

AW: Programm Beenden

  Alt 12. Okt 2016, 11:45
ok, das habe ich mir schon gedacht, viele Dank Sakura.
Die Idee mit dem Trayicon ist super und funktioniert, vielen Dank Whookie
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:10 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