Autor Beitrag
GUFR
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: So 20.07.03 14:19 
Hallo

In einer Eingabemaske habe ich einen Button plaziert auf den ich klicke (Enter) wenn alle Sachen erfasst sind. Die Entertaste bewikt das gleiche.

Nun möchte ich dass dies nur mit dem Button möchlich ist, die Entertaste sollte zum springen von einem DBEdit zum zweiten usw. benützt werden können.

Vielen Dank zum voraus!

GUFR
fcg
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 360

WinXP
D3 Prof, D6 Pers
BeitragVerfasst: So 20.07.03 14:23 
GUFR hat folgendes geschrieben:
Nun möchte ich dass dies nur mit dem Button möchlich ist, die Entertaste sollte zum springen von einem DBEdit zum zweiten usw. benützt werden können.


Benutzt man dafür nicht die Tab-Taste..?? Naja egal. Du könntest in einem onKey Event die Entertaste abfangen, und ihr Anweisungen zuordnen.

Wenn du nur den Effekt haben willst, das die Entertaste nciht das selbe wie der Button macht, änder die Tabreihefolge so, das der Button nicht unmittelbar nach dem letzten Edit Feld liegt.

fcg

_________________
.: Wer für alles offen ist, kann nicht ganz dicht sein! :.
Natti
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 50



BeitragVerfasst: Di 22.07.03 14:09 
ENTER in TAB umwandeln:

OnKeyDown
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key=vk_return then
begin
   key:=0;
   keybd_event(vk_tab,0,0,0);
   keybd_event(vk_tab,0, KEYEVENTF_KEYUP,0);
end;
end;


Moderiert von user profile iconKlabautermann: Delphi-Tags hinzugefügt.
GUFR Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: Fr 25.07.03 19:11 
Hallo Natti

Es funktioniert super. Danke !

GUFR
majolo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 334

Ubuntu 8.04, WinXP Prof.
D1, D6Pers, D7 Prof., D8 Prof., D2005 Pers
BeitragVerfasst: Sa 26.07.03 22:25 
Das müsste auch gehen. Damit kannst du mit Enter ins nächste Feld springen.

Zuerst musst du die Eigenschaft "KeyPreview" des Formulars auf "true" setzen. Danach folgende Prozedur ins OnKey-Ereignis schreiben.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
 if Key = #13 then begin
  Key := #0;
  PostMessage(Handle, WM_NextDlgCtl, 0, 0);
 end;
end;

_________________
Gruß
majolo