AGB  ·  Datenschutz  ·  Impressum  







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

Übernahme der Eingabe mit ENTER

Ein Thema von jmit · begonnen am 14. Apr 2006 · letzter Beitrag vom 15. Apr 2006
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von jmit
jmit

Registriert seit: 24. Feb 2005
Ort: Langelsheim
383 Beiträge
 
Turbo Delphi für Win32
 
#1

Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 19:35
Hallo,

ich habe in meinem Programm ein Eingabefeld vom Typ TEdit. Nach Eingabe eines Wertes möchte ich diesen mit der Enter-Taste übernehmen, um weitere Berechnungen bzw. Ausführungen im Programm zu machen. Leider bekomme ich mit KeyPress nicht das gewünschte Ergebnis. Über die Suche habe ich noch nichts passendes gefunden.

Vielen Dank im Voraus

Gruß Jörg
Windows 7, Firefox Version 3.6, Turbo Delphi für Win32
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 19:36
Hallo!

Mache es mit KeyDown und überprüfe den Wert auf 13.

Delphi-Quellcode:
procedure TForm1.Button1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = 13 then
  begin
    //
    // Code
    //
  end;
end;
Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
EDatabaseError

Registriert seit: 11. Mai 2005
Ort: Göppingen
1.238 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 19:36
Mach in dem Edit das onKeyDown Event folgendermaßen:

Delphi-Quellcode:
begin
if key = 13 then
begin
//mach dann des.
end;
end;
Mfg
Tobi

(Man da war einer schneller)
Tobias
It's not a bug, it's a feature.
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 20:14
Wenn du am schluss noch den key auf #0 setzt, dann verhinderst du den WindowsBeep, der normalerweise erklingt.
Delphi-Quellcode:
if key = 13 then
begin
// tue dies und jenes
key := #0;
end;
gruss

PS: Beim nächsten mal bitte die Suche verwenden.
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 20:16
Zitat von MrKnogge:
Wenn du am schluss noch den key auf #0 setzt, dann verhinderst du den WindowsBeep, der normalerweise erklingt.
In diesem Fall musst du Key auf 0 setzen, da wir uns in KeyDown befinden, welches den Parameter Key als Word verlangt.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#6

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 20:57
Zitat von EDatabaseError:
(Man da war einer schneller)
Ähm... und warum schickst du dann deinen Beitrag noch ab ?
Es ist ja nicht so, dass mich der rote Kasten noch nie gelinkt hat, aber da du den Text nicht dazueditiert hast, hast du faux' Antwort wohl noch vor dem Abschicken gesehen .
Und da dein Beitrag weder lang ist noch irgendwelchen Mehrwert im Vergleich zu faux' Post enthält, ist er eigentlich reiner Spam.

@jmit (und alle anderen ): Solange du den User nicht direkt darauf hinweist, finde ich es nicht intuitiv, in einem Edit Enter drücken zu müssen. Besser wäre ein "Berechnen"-Button daneben mit Default=true. Dann brauchst du a) nicht einmal selbst Code schreiben, b) dich auch nicht um den Beep kümmern und c) dich nicht um verwunderte User sorgen.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Balu der Bär
(Gast)

n/a Beiträge
 
#7

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 21:01
Genau wie dein Beitrag auch.

Edit: Nur als Hinweis, Khabarakh hat seinen Beitrag gerade editiert, vorher fand sich in ihm der untere Teil nicht an, deshalb wies ich ihn darauf hin das sein Post ebenfalls nur Spam ist.
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 21:12
BTW: key:=0; nützt nix. Zuweisung geht nur im OnKeyPress, wenn ich mich nicht irre.

Und, kann man im OnKeyPress nicht auch mit #13 arbeiten?

Nachtrag: Ja, das geht:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
showmessage('Blubb!');
key:=#0;
end;
end;
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#9

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 21:17
@Balu: D'oh, du warst eine Minute zu schnell . Den Rest hatte ich einfach vergessen, Alzheimer fängt wohl schon an. Jedoch würde ich grundsätzlich auch einen vollkommenen Offtopic-Beitrag schreiben, um auf solche sinnlosen Beiträge zu reagieren. Oder sollten in Zukunft alle "Benutze doch nächstes Mal bitte die Suche"-Beiträge sofort gelöscht werden?
Aber wenn, wie faux mir geschrieben hat, EDataBaseError wirklich editiert hat und es sich um einen Forenbug handelt, ist der obere Teil meines Beitrages natürlich null und nichtig.

@3_of_8: faux hat doch schon die Methodensignatur gepostet, daran kannst du erkennen, dass Key ein Refernzparameter ist.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Übernahme der Eingabe mit ENTER

  Alt 14. Apr 2006, 21:19
Das Ding kann noch so sehr ein Pointer auf Key sein, es funktioniert so einfach nicht. Nur in OnKeyPress. Ich habs gerade eben getestet.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:39 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