Einzelnen Beitrag anzeigen

gr4p3fruit

Registriert seit: 14. Nov 2008
8 Beiträge
 
#1

Eingabetaste - Entertaste mit Button verknüpfen?

  Alt 10. Jun 2009, 16:43
Entschuldigt bitte, wenn es so einen Thread schon gibt, aber ich habe mit der Suchfunktion nichts hilfreiches gefunden.
Ich will, dass wenn man in meinem Programm in allen vier objekten (3 Ddit felder und eine Radio Group) mit der Enter Taste
das gleiche Erreicht wie mit dem Drücken auf den Button. Wie kann ich außer mit

Delphi-Quellcode:
procedure TSearchDlg.LEdt_SearchTextKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (Key = 13) then
    // Tue irgendwas
end;
die Entertaste mit dem "Berechnen" Button verknüpfen?

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Edit2: TEdit;
    Edit1: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Button1: TButton;
    Edit3: TEdit;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    RadioGroup1: TRadioGroup;
    Image1: TImage;
    procedure Button1Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: #13);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  von,bis,lohn,stunden,ergebnis : real;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

if (Edit1.Text='') or (Edit2.Text='') or (Edit3.Text='') then showmessage('Bitte alle Felder ausfüllen!') else

  begin
    von:=StrToFloat(Edit1.Text);
    bis:=StrToFloat(Edit2.Text);
    lohn:=StrToFloat(Edit3.Text);
    if Radiogroup1.ItemIndex=0 then stunden:=(bis-von-1) else stunden:=(bis-von);
    ergebnis:=stunden*lohn;

    showmessage('Du hast in ' +FloatToStr(stunden) +' Stunden ' +FloatToStr(ergebnis) +' € verdient!');
  end;

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: #13);
begin
    von:=StrToFloat(Edit1.Text);
    bis:=StrToFloat(Edit2.Text);
    lohn:=StrToFloat(Edit3.Text);
    if Radiogroup1.ItemIndex=0 then stunden:=(bis-von-1) else stunden:=(bis-von);
    ergebnis:=stunden*lohn;

    showmessage('Du hast in ' +FloatToStr(stunden) +' Stunden ' +FloatToStr(ergebnis) +' € verdient!');
end;

end.
  Mit Zitat antworten Zitat