Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Problem mit FormKeyPress (https://www.delphipraxis.net/113497-problem-mit-formkeypress.html)

Danül 8. Mai 2008 17:17


Problem mit FormKeyPress
 
Hallo, ich bins mal wieder ;)

Ich wollte heute einige Hotkeys festlegen die ich drücken kann damit etwas passiert.
Eigentlich klappt dies auch bzw. ich kann 2-3 Hotkeys binden aber dann geht auf einmal kein einziger mehr.
Als Fehlermeldung steht da:
[Pascal Fataler Fehler] F2039 Ausgabedatei 'C:\Dokumente und Einstellungen\Administrator\Desktop\Informatik \DelphiHauptmenü\Project1.exe' kann nicht erstellt werden
Ich verändere NICHTS an den vorherigen Hotkeys, bei mir war es gerade z.B. der Fall dass ich anstatt + Hotkey nen - Hotkey dazugetan habe... und dann geht wie gesagt nichts mehr... Kein Key funktioniert mehr und ich weiß nicht warum.

Hab den Quelltext mal eingefügt: die ersten beiden Hotkeys funktionierten.... als ich den dritten hinzugefügt habe erscheint nun der Error und es geht nichts mehr.


Ich danke euch vielmals für eure Hilfe ;)

Daniel
Oh, habs falsch verlinkt den Quellcode, hier ist er nun ;)
Code:
procedure TForm2.FormKeyPress(Sender: TObject; var Key: Char);
begin
If Key = #027     //Escape//
then begin
  Form2.Visible:=false;
  Form1.Visible:=true;
end;

If Key = #049      //1 für Minus bzw. Gang zurückschalten//
then begin
i:=i-1 ;
panel1.caption:=inttostr(i);
end;

If Key = #050      //1 für Plus bzw. Gang hochschalten//
then begin
i:=i+1 ;
panel1.caption:=inttostr(i);
end;

end;
Key 027,049 funktionierten, dann kam 050 dazu und der Fehler ;)

Die Muhkuh 8. Mai 2008 17:18

Re: Problem mit FormKeyPress
 
Stimmt der Pfad?
Läuft die Exe vielleicht noch (TaskManager :arrow: Prozesse)?

Fussball-Robby 8. Mai 2008 17:19

Re: Problem mit FormKeyPress
 
Zitat:

[Pascal Fataler Fehler] F2039 Ausgabedatei 'C:\Dokumente und Einstellungen\Administrator\Desktop\Informatik \DelphiHauptmenü\Project1.exe' kann nicht erstellt werden
Sieht so aus, als würde die Exe noch laufen, dann kann Delphi nicht neu kompilieren.

Edit: Man, immer diese schnellen Rüsselmöpse :mrgreen:

Danül 8. Mai 2008 17:21

Re: Problem mit FormKeyPress
 
Oh hey, das ging ja mal fix ;)

Danke vielmals, das erklärt zumindest den Fatal Error, ich hatte wirklich die Exe noch am laufen.

Allerdings funktionieren die Hotkeys immer noch nicht


grüße Daniel

Die Muhkuh 8. Mai 2008 17:25

Re: Problem mit FormKeyPress
 
Die funktionieren auch nur, wenn die Form fokusiert ist.

Wenn Du richtige Hotkeys willst Hier im Forum suchenRegisterHotkey

Danül 8. Mai 2008 19:02

Re: Problem mit FormKeyPress
 
hm wie meinste das mit die Form muss fokussiert sein?

Ich konnte ja 2 der Hotkeys zum laufen bringen, teilweise auch 3. Dann speicher ich oder will noch einen hinzufügen und dann funktioniert keiner mehr....

Fussball-Robby 8. Mai 2008 19:14

Re: Problem mit FormKeyPress
 
Was heißt, es funktioniert keiner mehr? Gibts nen Fehler, oder passiert einfach nichts?
Du könntest es z.B. so machen(OnKeyDown):
Delphi-Quellcode:
procedure TMyForm.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  case Key of
    vk_Escape: begin
                 Form2.Visible := False;
                 Form1.Visible := True;
               end;
    vk_Add: begin
              Inc(i);
              Panel1.Caption := IntToStr(i);
            end;
    vk_Subtract: begin
                   Dec(i);
                   Panel1.Caption := IntToStr(i);
                 end;
  end;
end;
KeyPreview der Form sollte auf True sein.

Besser wäre es allerdings, wenn du für das ändern des Gangs eine eigene prozedur schreibst.

Mfg

Apollonius 8. Mai 2008 19:16

Re: Problem mit FormKeyPress
 
Dir ist aber bekannt, dass man in Case-Of-Konstrukten auch begin-end verwenden kann?
Ich bin zwar ein ausgesprochener Freund von in Maßen eingesetztem Goto, aber hier ist es wirklich nicht zu empfehlen.

Fussball-Robby 8. Mai 2008 19:21

Re: Problem mit FormKeyPress
 
Zitat:

Zitat von Apollonius
Dir ist aber bekannt, dass man in Case-Of-Konstrukten auch begin-end verwenden kann?
Ich bin zwar ein ausgesprochener Freund von in Maßen eingesetztem Goto, aber hier ist es wirklich nicht zu empfehlen.

Natürlich weiß ich das, ich benutze das begin..end in case aber nicht so gerne. Wird mir dann manchmal zu unübersichtlich, ist halt geschmackssache. Wieso sollte man goto dort denn nicht verwenden?

Danül 8. Mai 2008 19:25

Re: Problem mit FormKeyPress
 
hm mittlerweile hab ich das Problem gefunden....
Ich kann die Form nicht auf visible:=false setzen, da Buttons/Panels auf der Form sind.
Ich brauch aber unbedingt ein ,,wechseln'' der Form.

Der komplette Knopf geht nicht mehr nachdem ein Objekt auf der Form ist :(


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:40 Uhr.
Seite 1 von 2  1 2      

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