![]() |
Exit passiert zu spät
Hallo ,
ich habe ein leider sehr blödes Problem Wenn ich ein Edit feld Fokussiere und von dort diereckt auf ein Icon eines Treeview Click, passiert das Change ereignis des TreeView Zu erst und dann erst das exit ereigniss des Textfeldes. Konnte es erst nicht glauben und hab ne Test anwendung geschrieben. Ist leider Definitiv so. Wie kann ich dieses Verhalten Ändern? (Also Erst Exit des TEdit dann Change beim TTreeview) So Sieht der Quellcode der test Anwendung aus.
Delphi-Quellcode:
[edit=Christian Seehase]Delphi-Tags korrigiert Mfg, Christian Seehase[/edit]
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; TreeView1: TTreeView; procedure Edit1Exit(Sender: TObject); procedure TreeView1Change(Sender: TObject; Node: TTreeNode); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Edit1Exit(Sender: TObject); begin Showmessage('Exit'); end; procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode); begin Showmessage('Change'); end; procedure TForm1.FormCreate(Sender: TObject); var NewNode, oldNode:TTreeNode; begin NewNode := TTreeNode.Create(Treeview1.items); NewNode := TreeView1.Items.Add(NewNode,'Ast1' ); OldNode := NewNode ; NewNode := TTreeNode.Create(Treeview1.items); TreeView1.Items.AddChild(OldNode,'Abteilung1'); TreeView1.Items.AddChild(oldNode,'Abteilung2'); TreeView1.Items.AddChild(oldNode,'Abteilung3'); TreeView1.Items.Add(TTreeNode.Create(Treeview1.items),'Ast2' ); TreeView1.Items.Add(TTreeNode.Create(Treeview1.items),'Ast3' ); end; end. |
Re: Exit passiert zu spät
Hab jetzt erstmal einen Workaround.
Ich Überschreibe die Change Methode des TTreeView und Poste von dort eine eigene Message an den TTreeView. In der Empfangenden Methode Führe ich dann Inherited Change aus, das Node Übergebe ich auch mit der Message. Wenn jemand eine Schönere Lösung hatt bitte, bitte, bitte...teile es mir mit. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:52 Uhr. |
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