Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi [GELÖST] Key (z.B 'A' ) per Button an ein Editfeld senden (https://www.delphipraxis.net/183589-%5Bgeloest%5D-key-z-b-per-button-ein-editfeld-senden.html)

Dexo 21. Jan 2015 13:41


[GELÖST] Key (z.B 'A' ) per Button an ein Editfeld senden
 
Liste der Anhänge anzeigen (Anzahl: 1)
!GELÖST!

Hey,
ich habe gerade ein Problem :-D
Und zwar programmiere ich momentan einen Taschenrechner und möchte gerne, dass er, wenn ich auf den Button drücke, dass er dann eine Zahl (z.B 7) in das Editfeld schreibt, wo gerade der Focus ist.
Allerdings soll er das auch in ein anderes Editfeldschreiben, wenn ich den Focus ändere... :?:

Da ich keine Ahnung habe wie ich das machen soll und ich im Internet bzw. hier noch nichts darüber herausbekommen habe, würde ich mich über eine schnelle Antwort sehr freuen :-D

(Bin mit Delphi/Lazarus noch nicht so der Pro )
Anhang 42458

Klaus01 21. Jan 2015 13:45

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
Hallo,

wenn Du den Button (7) drückst - wird der den Focus haben.

Grüße
Klaus

Dexo 21. Jan 2015 13:48

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
Zitat:

Zitat von Klaus01 (Beitrag 1287280)
Hallo,

wenn Du den Button (7) drückst - wird der den Focus haben.

Grüße
Klaus

Mir geht es auch eigentlich eher um den Code :-D

Wenn ich den Button drücke, soll er eine Zahl, also eine Taste von dem Keyboard, an das Editfeld senden (falls das überhaupt geht :D )... daran scheitere ich momentan

Trotzdem danke für deine Antwort :thumb:

Klaus01 21. Jan 2015 13:52

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
..meinst Du das in etwa so?

Delphi-Quellcode:
procedure TForm1.Button7Click(sender:TObject);
var
  tempStr: String:
begin
  tempStr := display.text;
  tempStr := concat(tempStr,'7');
  display.text := tempStr;
end;
Grüße
Klaus

Nersgatt 21. Jan 2015 13:52

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
Du kannst das Zeichen ja einfach in das Feld schreiben:

Delphi-Quellcode:
Edit1.Text := '1';

haentschman 21. Jan 2015 13:57

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
Hallo und willkommen hier...:dp:

Wie würdest du deinen bisherigen Kenntnisstand einschätzen? Weißt du was Events sind und wie man sie benutzt? Ich gebe dir mal die Lösung. Wenn du das nicht verstehst, frage einfach nach.

Lösung:
1. In der Entwurfsansicht Doppelklick auf den Button -> Der Editor öffnet sich mit einem vorgefertigtem Prozedurrumpf.
In etwa so:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

end;
2. Dort trägst du dann den Code ein der beim drücken des Buttons ausgeführt werden soll.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
  Edit1.Text:= '7';
end;
3. fertig.

HINWEIS:
Der Code ist, obwohl er funktioniert, nicht wirklich gut. Darstellung und Daten sind immer zu trennen. In Anbetracht deiner Signatur das nur als Hinweis. :zwinker:

Dexo 21. Jan 2015 13:59

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
Zitat:

Zitat von Klaus01 (Beitrag 1287283)
..meinst Du das in etwa so?

Delphi-Quellcode:
procedure Button7.click(sender:TObject);
var
  tempStr: String:
begin
  tempStr := display.text;
  tempStr := concat(tempStr,'7');
  display.text := tempStr;
end;
Grüße
Klaus

Ja sowas meine ich, allerdings erscheint dann die Nachricht
"Error: Identifier not found 'ConcatStr' "

Klaus01 21. Jan 2015 14:07

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
Zitat:

Zitat von Dexo (Beitrag 1287288)
Ja sowas meine ich, allerdings erscheint dann die Nachricht
"Error: Identifier not found 'ConcatStr' "

Ich hatte den code zwischenzeitlich ausgebessert.
Grüße
Klaus

Dexo 21. Jan 2015 14:12

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
Zitat:

Zitat von haentschman (Beitrag 1287287)
Hallo und willkommen hier...:dp:

Wie würdest du deinen bisherigen Kenntnisstand einschätzen? Weißt du was Events sind und wie man sie benutzt? Ich gebe dir mal die Lösung. Wenn du das nicht verstehst, frage einfach nach.

Lösung:
1. In der Entwurfsansicht Doppelklick auf den Button -> Der Editor öffnet sich mit einem vorgefertigtem Prozedurrumpf.
In etwa so:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

end;
2. Dort trägst du dann den Code ein der beim drücken des Buttons ausgeführt werden soll.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
  Edit1.Text:= '7';
end;
3. fertig.

HINWEIS:
Der Code ist, obwohl er funktioniert, nicht wirklich gut. Darstellung und Daten sind immer zu trennen. In Anbetracht deiner Signatur das nur als Hinweis. :zwinker:

Danke :-D

Also ich habe schon so ein paar Grundkentnisse und habe auch schon einmal einen einfachen Taschenrechner geschrieben, der
2Edits für Wert1 und Wert2 hatte, ein Edit für die Ausgabe des Ergebnisses und 4 Button (+ - * /)...

Delphi-Quellcode:
procedure TRechnerMainForm.ButtonPlusClick(Sender: TObject);
begin
  wert1:=strtofloat(Wert1Edit.text);
  wert2:=strtofloat(Wert2Edit.text);

  ergebnis:= wert1+wert2;

  ErgebnisEdit.text:= floattostr(ergebnis);

end;
Möchte es so haben, dass der Button die Zahl da reinschriebt, wo der Focus, den man ebenfalls durch Buttons setzen kann, gerade ist.

Also geht das mit

Edit1.Text:= Edit1.Text + '7';

Leider nicht, da er dann ja nur in das Editfeld schriebt :( .....

Bin langsam echt am verzweifeln...

DeddyH 21. Jan 2015 14:13

AW: Key (z.B 'A' ) per Button an ein Editfeld senden
 
Wieso denn nicht einfach
Delphi-Quellcode:
display.Text := display.Text + '7';
?


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:54 Uhr.
Seite 1 von 3  1 23      

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