Delphi-PRAXiS
Seite 1 von 6  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Taschenrechner über Tastatur bedienen (https://www.delphipraxis.net/84048-taschenrechner-ueber-tastatur-bedienen.html)

Stefan92 10. Jan 2007 17:40


Taschenrechner über Tastatur bedienen
 
Hallo,
ich habe folgendes Problem, und zwar habe ich einen einfachen Taschenrechner programmiert, der auch funktioniert, aber jetzt möchte ich ihn auch über Tastatur bedienen.
Wie kriege ich es denn z.B. hin dass er stetig auf einen Tastendruck wartet? Mit read?
Sorry, dass ich frage aber ich google schon seit einigen Tagen und auch im Forum hab ich geguckt, aber entweder gibt es das nicht oder es ist selbstverständlich :pale: ...

Gruß

Stefan

sirius 10. Jan 2007 18:05

Re: Taschenrechner über Tastatur bedienen
 
Schau dir mal die Ereignisse deines Formulars an.

zahor 10. Jan 2007 18:09

Re: Taschenrechner über Tastatur bedienen
 
z.B. onKeyPress oder onKeyDown, die gedrückte taste steht in der variable "key"

inherited 10. Jan 2007 18:32

Re: Taschenrechner über Tastatur bedienen
 
"KeyPreview" der Form sollte noch aktiviert sein.

Stefan92 11. Jan 2007 07:04

Re: Taschenrechner über Tastatur bedienen
 
Erstmal vielen Dank für die vielen Antworten.
Ist echt ein tolles Forum :wink:.
Aber jetzt zur Sache:
Ich habe jetzt folgende Prozedur geschrieben, die ich auch in der Delphi-Hilfe gefunden habe:
Code:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: char);
begin
  if key='1' then button1click(button1);
end;
Die Prozedur Button1click gibt es wirklich.
Allerdings reagiert da nichts.
Hoffe ihr könnt mir helfen.

Gruß

Stefan

PS: Wenn ihr wollt, poste ich auch den ganzen Quelltext.

[edit=Admin] Mfg, Daniel[/edit]

Klaus01 11. Jan 2007 07:35

Re: Taschenrechner über Tastatur bedienen
 
Zitat:

Zitat von Stefan92
Die Prozedur Button1click gibt es wirklich.
Allerdings reagiert da nichts.
Hoffe ihr könnt mir helfen.

Guten Morgen Stefan,

hast Du keyPreview in der Form auf true gesetzt?

Grüße
Klaus

[edit=Admin] Mfg, Daniel[/edit]

Tormentor32 11. Jan 2007 07:37

Re: Taschenrechner über Tastatur bedienen
 
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: char);
begin
  if key='1' then button1.click;
end;
Probier mal das

edit: Ist der Fokus auf einem der buttons? Ich glaube, dann wird das KeyPress eines Buttons ausgelöst, und nicht der Form... oder?

Stefan92 11. Jan 2007 14:22

Re: Taschenrechner über Tastatur bedienen
 
@Klaus01: Ja, in der Form ist Keypreview auf true gestellt.

@Tormentor32:
Zitat:

Ist der Fokus auf einem der buttons? Ich glaube, dann wird das KeyPress eines Buttons ausgelöst, und nicht der Form... oder?
Tut mir leid, aber ehrlich gesagt verstehe ich die Frage nicht. :wiejetzt: Meinst du mit Fokus das Ziel?

Gruß

Stefan

inherited 11. Jan 2007 14:22

Re: Taschenrechner über Tastatur bedienen
 
Zitat:

Zitat von Tormentor32
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: char);
begin
  if key='1' then button1.click;
end;
Probier mal das

edit: Ist der Fokus auf einem der buttons? Ich glaube, dann wird das KeyPress eines Buttons ausgelöst, und nicht der Form... oder?

Genau dafür gibt es ja KeyPreview :roll:

Tormentor32 11. Jan 2007 14:26

Re: Taschenrechner über Tastatur bedienen
 
Mit Fokus meine ich, dass deine Buttons "Anvisiert" sind, soll heißen markiert.
Versuche mal inheriteds Vorschlag mit KeyPreview

edit:
Zitat:

@Klaus01: Ja, in der Form ist Keypreview auf true gestellt.
wer lesen kann ist klar im Vorteil! Mist!

edit2: Sieht das bei euch auch so komisch aus? siehe Anhang
edit3: So :mrgreen: jetzt ist es wieder schön, da brauchen wir auch keinen Screenshot mehr...


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:59 Uhr.
Seite 1 von 6  1 23     Letzte »    

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 by Thomas Breitkreuz