Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Welches Ereignis muß ich tEdit verändern? (https://www.delphipraxis.net/182962-welches-ereignis-muss-ich-tedit-veraendern.html)

zillee 30. Nov 2014 10:16

AW: Welches Ereignis muß ich tEdit verändern?
 
Ist doch das gleiche ... oder nicht?
Mit SendMessage(Self.Handle, ..., ..., ...) oder Perform(..., ..., ...) kann ich doch auch die Eingabefolge bestimmen.

humbuck 30. Nov 2014 10:25

AW: Welches Ereignis muß ich tEdit verändern?
 
Das ist sicherlich nicht das gleiche...

Ich bin jetzt zu faul zum Schreiben, deshalb eine kopierter Ausblick auf die Mühe mit Sendmessage...

Delphi-Quellcode:
const
   MY_MESSAGE = WM_USER + 4242;
 
type
   TForm1 = class(TForm)
     Button1: TButton;
     procedure Button1Click(Sender: TObject);
     // Handler that receive the Message
     procedure MessageReceiver(var msg: TMessage); message MY_MESSAGE;
   end;

var
   Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
   txt: string;
begin
   txt := 'Hello World';
   SendMessage(Form1.Handle, MY_MESSAGE, 0, DWORD(PChar(txt)));
end;

// To receive this custom Message that is addressed to form1.handle
 // you need a message handler.

procedure TForm1.MessageReceiver(var msg: TMessage);
var
   txt: PChar;
begin
   txt := PChar(msg.lParam);
   msg.Result := 1;
   ShowMessage(txt);
end;
Sollte dir nach kurzer Analyse vielleicht weiter helfen...

humbuck 30. Nov 2014 10:36

AW: Welches Ereignis muß ich tEdit verändern?
 
Hier noch ein "kleines" Beispiel:

Delphi-Quellcode:
function GetActiveWord(rch : TRichedit;x,y: integer): string;
var pos : Integer;
poin : TPoint;
start_pos : Integer;
end_pos : Integer;
c : Char;
txt : string;
txtlen : Integer;
begin
poin.x := x; poin.y := y;
pos := SendMessage(rch.handle, EM_CHARFROMPOS, 0, integer(@poin));
If pos <= 0 Then Exit;
txt := rch.Text;
while (pos > 0)and(txt[pos] in ['0'..'9','a'..'z','A'..'Z','_',
'ö','Ö','ü','Ü','ä','Ä']) do dec(pos);
start_pos := pos+1;
inc(pos);
while (pos < length(txt))and(txt[pos] in ['0'..'9','a'..'z','A'..'Z','_',
'ö','Ö','ü','Ü','ä','Ä']) do inc(pos);
end_pos := pos;
result := copy(txt,start_pos,end_pos-start_pos);
end;
Funktionsaufruf:
Delphi-Quellcode:
procedure TForm1.RichEdit1MouseMove(Sender: TObject; Shift: TShiftState;
X,Y: Integer);
begin
statusbar1.SimpleText := GetActiveWord(richedit1,x,y);
end;
Aber warum nicht einfach, wenn's auch umständlich geht...

Wie bereits erwähnt: Was hast du eigentlich vor? Willste nur z.B. bei einer Passworteingabe ins PW-Verifizierungsfeld springen???

zillee 30. Nov 2014 11:06

AW: Welches Ereignis muß ich tEdit verändern?
 
Nein, das ist ein Organisationsprogramm.
Ich habe es:

procedure TriggerKeyOnPress(Sender: tObject; var key: char);
begin
...
...
if ord(key) = VK_RETURN then beginn
key := #0;
Perform(WM_NextDlgCrt, 0, 0);
end;
...
...
end;

Vielen Dank!!

himitsu 30. Nov 2014 12:07

AW: Welches Ereignis muß ich tEdit verändern?
 
Crt?
MSDN-Library durchsuchenWM_NEXTDLGCTL oder Delphi-Referenz durchsuchenForm.FindNextControl

Aber was ist/war eigentlich so schwer daran einfach mal zu erklären was genau du wolltest?
Und Quellcode bitte in [DELPHI] :zwinker:

DeddyH 30. Nov 2014 13:44

AW: Welches Ereignis muß ich tEdit verändern?
 
http://www.delphipraxis.net/125006-w...n-richtig.html

p80286 30. Nov 2014 16:25

AW: Welches Ereignis muß ich tEdit verändern?
 
@zillee

If you prefer to use the english language, it would be better to do so.

greetings
K-H

Perlsau 1. Dez 2014 06:12

AW: Welches Ereignis muß ich tEdit verändern?
 
Zitat:

Zitat von zillee (Beitrag 1281630)
Welches Ereignis muß ich tEdit verändern?
Ich habe nach den Ereignis gesucht, aber es nicht gefunden. Eigenschaften und Ereignisse, welche Klick?

Besten Dank!

CROSSPOST


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:52 Uhr.
Seite 2 von 2     12   

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