![]() |
space taste sperren und freigeben ohne onKeyPress
hi
Ich möchte die Spacetaste Sperren, da ich mir mit dem tastendruck eine Nachricht anzeigen lassen möchte.
Delphi-Quellcode:
Die Nachricht wird mir aber nicht angezeigt, weil der Tastendruck Das Fenster gleich wieder schließt.
if Windows.GetAsyncKeyState(32)<0 then //32 Space
begin showmessage('Test'); end Oder kann man vielleicht das GetAsyncKeyState-Feld veränderm??? gruss katrin |
Re: space taste sperren und freigeben ohne onKeyPress
Was spricht gegen:
Delphi-Quellcode:
Warum wird das Fenster wieder grschlossen? Benutzt du ein normales Formular oder einen Dialog?
if Key = ' ' then
begin ShowMessage('Hallo Welt!'); end; |
Re: space taste sperren und freigeben ohne onKeyPress
Ich frage mit
Delphi-Quellcode:
ob die Leertaste gedrückt wurde.
Windows.GetAsyncKeyState(32)<0
Wenn das der Fall ist Zeige ich mir ein MessageFenster
Delphi-Quellcode:
an.
showmessage('Test');
Da aber in dem Fenster der Focus auf dem OK-Button liegt und das Signal von der gedrückten Space an das Messagefenster weitergegeben wird, so schließt sich das Fenster wieder sofort.
Delphi-Quellcode:
if Windows.GetAsyncKeyState(32)<0 then //32 Space
begin //space sperren oder feld für gedrückte tasten manipulieren. sprich: gedrückteTastenFeld[32] := 0; showmessage('Test'); end |
Re: space taste sperren und freigeben ohne onKeyPress
Tja, wie wäre es als Workaround ein eigenes Fenster zu benutzen? Bsp:
![]() |
Re: space taste sperren und freigeben ohne onKeyPress
Hi,
wäre es nicht auch möglich bei
Delphi-Quellcode:
ein anderes Form zu öffnen und darin den Text anzeigen zu lassen? In
onKeydown
Delphi-Quellcode:
könnte man das Form doch wieder ausblenden.
onKeyup
|
Re: space taste sperren und freigeben ohne onKeyPress
Danke luigied für deine Antwort, aber das ist leider keine Lösung für mein Problem.
Hi Olli ich werde mal schaun, ob ich einen workaround machen kann. Sonst mache ich das nicht, weil dann ein problem nach dem anderen umgangen wird anstatt eine optimale lösung zu finden. :wink: trotzdem danke für die idee. gruss katrin |
Re: space taste sperren und freigeben ohne onKeyPress
Moin Katrin,
wo fragst Du die Taste denn ab? |
Re: space taste sperren und freigeben ohne onKeyPress
Ich habe auf meiner Fomr ein Image das ich verändere in einer endlosschleife.
in der schleife frage ich nun die taste space ab
Delphi-Quellcode:
um den bildverändernden Vorgang zu unterbrechen.
if Windows.GetAsyncKeyState(32)<0 then
Das klappt auch alles solange ich nicht die space oder enter nehme. Aber ich will die space taste benutzen. ggrrrr :wall: |
Re: space taste sperren und freigeben ohne onKeyPress
Sorry.
Ich glaube ich hab mich falsch ausgedrückt :oops: Ich meinte, dass in dem neuen Form deine Nachricht in einem Label oder so ausgegeben wird. (so zu sagen als selbstgebautes ShowMessage) Was willst du denn darin ausgeben, bzw. warum 'test'? |
Re: space taste sperren und freigeben ohne onKeyPress
hmm...
du könntest ja ein Application.Processmessages einbauen, dann kannst du den abbruch mit einem button machen. was für ein problem hast du genau? welches fenster schließt sich? gleich wieder? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz