![]() |
VST (VirtualStringTree): Aktuelle Zeile bestimmen geht nicht
Hallo!
Ich hab ein ganz simples Problem: Ich verwende ein TVirtualStringTree um ein Grid darzustellen, in dem der User mit Maus und Tastatur herumnavigieren kann. Ich will nun immer die Position der aktuell ausgewählten Zelle anzeigen. (eigentlich will ich was ganz anderes, aber halten wir's hier mal simpel). Mach ich nun folgendes:
Delphi-Quellcode:
dann schlägt das bei Tastaturnavigation (bei den rauf/runter Tasten) fehl.
procedure TForm1.VSTFocusChanged(Sender: TBaseVirtualTree;
Node: PVirtualNode; Column: TColumnIndex); begin Node:=VST.GetFirstSelected; // Müsste ich nicht, aber "in echt" ruf ich eine andere Methode auf, // die das so bestimmt - und das ist dann auch schon das Problem! Caption:=Format('%d / %d', [Node.Index, Column]); end; Die ausgewählte Zeile bei Tastaturnavigation wird scheinbar erst NACH dem Aufruf von OnFocusChange aktualisiert. HILFE! Ralf |
Re: VST (VirtualStringTree): Aktuelle Zeile bestimmen geht n
Hast du schon mal das OnChange-Ereignis ausprobiert? Damit klappt es bei mit wunderbar.
|
Re: VST (VirtualStringTree): Aktuelle Zeile bestimmen geht n
Alles was auf "selected" endet zeigt gewählt Knoten an.
Also alles was "blau" ist. Was du suchst ist das fokussierte Element.
Delphi-Quellcode:
VirtualStringTree1.FocusedNode
VirtualStringTree1.FocusedColumn |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 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