Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Einstellungen im Editfenster (https://www.delphipraxis.net/105811-einstellungen-im-editfenster.html)

Garfield 1. Jan 2008 12:09

Re: Einstellungen im Editfenster
 
Geht natürlich auch. Und wenn Du schon minimierst, kannst Du das "begin end" auch weglassen. Das ";" reicht.

DeddyH 1. Jan 2008 12:16

Re: Einstellungen im Editfenster
 
So fände ich es besser lesbar:
Delphi-Quellcode:
if not (Key in ['A'..'Z']) then
  Key := #0;

STS301 1. Jan 2008 17:34

Re: Einstellungen im Editfenster
 
Zitat:

Zitat von Garfield
Delphi-Quellcode:
      OnKeyPress := EditKeyPress;
Delphi-Quellcode:
procedure EditKeyPress(Sender: TObject; var Key: Char);
deklariert werden.

was bewirkt das OnKeyPress:=EditKeyPress?

was bewirkt das := #0

@bitsetter

ja genau, nur wie soll ich dem Programm dann sagen, dass er ins nächste Feld umspringen soll?

alles Gute im Neuen Jahr

DeddyH 1. Jan 2008 17:38

Re: Einstellungen im Editfenster
 
Zitat:

Zitat von STS301
ja genau, nur wie soll ich dem Programm dann sagen, dass er ins nächste Feld umspringen soll?

Versuch mal
Delphi-Quellcode:
Perform(WM_NEXTDLGCTL,0,0)

quendolineDD 1. Jan 2008 17:57

Re: Einstellungen im Editfenster
 
Sorry, hab die 2. Seite nicht gesehen

haentschman 1. Jan 2008 18:29

Re: Einstellungen im Editfenster
 
Hallo...

Zitat:

was bewirkt das := #0
...setzt den Key auf 0... damit dein Computer nicht 'bing' macht beim Tastendruck.
... nimm es raus und du wirst hören... :-D

Zitat:

Perform(WM_NEXTDLGCTL,0,0)
...setzt den Focus auf das nächste Feld in der Reihenfolge von TabOrder

ein bestimmtes Feld 'anspringen' z.B. mit...
Delphi-Quellcode:
Edit1.SetFocus;

... noch eine Variante:
Delphi-Quellcode:
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if key = VK_ESCAPE then --mach nichts;
  if key = VK_RETURN then --mach was;
  if key = VK_UP then --gehe zum nächsten Edit;
end;
...Delphi Hilfe ---> virtuelle Tastencodes

:hi:

STS301 1. Jan 2008 19:18

Re: Einstellungen im Editfenster
 
aha, mit ein bischen Grübeln werde ich hoffentlich jetzt was zu Stande bringen, wenn nicht, dann hört ihr sicher wieder von mir :wink:

kann man es nicht auch so schreiben?

Delphi-Quellcode:
case key of
   #1:=; //mach nichts
@DeddyH die Briefmarke hat mir besser gefallen :( :(

Garfield 1. Jan 2008 19:27

Re: Einstellungen im Editfenster
 
Zitat:

Zitat von STS301
was bewirkt das OnKeyPress:=EditKeyPress?

Da steht ja
Delphi-Quellcode:
...
    with (Components[i] as TEdit) do
    begin
      ...
      OnKeyPress := EditKeyPress;
    end;
  ...
end;
was so viel ist wie:
Delphi-Quellcode:
(Components[i] as TEdit).OnKeyPress := EditKeyPress;
Das bedeutet, dem Ereignis OnKeyPress des TEdits wird die Procedure EditKeyPress zugewiesen. Heißt, wenn das Edit den Focus hat und eine Taste wird gedrückt wird diese Procedure ausgeführt.

DeddyH 2. Jan 2008 11:05

Re: Einstellungen im Editfenster
 
Zitat:

Zitat von STS301
@DeddyH die Briefmarke hat mir besser gefallen :( :(

Ein bisschen Abwechslung muss sein :cheer:

[edit]
Zitat:

Zitat von STS301
Delphi-Quellcode:
case key of
   #1:=; //mach nichts

Fast ;)
Delphi-Quellcode:
case key of
   #1:; //mach nichts (ohne Gleichheitszeichen)
[/edit]


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:00 Uhr.
Seite 3 von 3     123   

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