Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   CanFocus Problem mit Button in TreeViewItem [All Platforms] (https://www.delphipraxis.net/175527-canfocus-problem-mit-button-treeviewitem-%5Ball-platforms%5D.html)

RWarnecke 28. Jun 2013 14:14

CanFocus Problem mit Button in TreeViewItem [All Platforms]
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,

wenn ich das Beispiel Projekt aus dem Anhang unter XE4 erstelle und dann auf den Pfeil bei TVI_1 klicke um mir die Child Items anzeigen lasse, funktioniert noch soweit alles. Wird jetzt die Anwendung beendet, dann gibt es eine Access Violation. Nehme ich das FormCreate-Event raus, dann gibt es keine Access Violation beim Beenden der Anwendung. Das passiert egal, ob ich CanFocus im Style setze oder in der Laufzeit.

Mein Ziel ist, dass ich darauf reagieren kann, wenn auf den Pfeil geklickt wird und dass ich dann auch weiß, welcher Eintrag im TreeView ausgewählt wurde.

Wenn ich das gleiche Projekt unter XE3 erstelle, funktioniert alles wunderbar mit dem Property CanFocus.

Hat jemand eine Idee, woran es liegen könnte, dass XE4 hier mir eine Access Violation ausgibt ?

jaenicke 28. Jun 2013 20:34

AW: CanFocus Problem mit Button in TreeViewItem [All Platforms]
 
Kurzes Debuggen zeigt: Der Button (der Pfeil) hat den Fokus, hat aber kein Root-Element, das wird aber in SetVisible bei der Stylefreigabe angesprochen.
Einfacher Workaround:
Delphi-Quellcode:
// in OnClose des Formulars:
  TV_1.SetFocus;

RWarnecke 28. Jun 2013 20:54

AW: CanFocus Problem mit Button in TreeViewItem [All Platforms]
 
Hallo Sebastian,

danke für Deine Hilfe. Der Workaround funktioniert auch bei mir. Nur dann verstehe ich es nicht ganz, warum es in XE3 funktioniert und in XE4 nicht. Denn in XE3 wird die Procedure TControl.SetVisible nicht aufgerufen beim Beenden des Programms.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:22 Uhr.

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