2015-09-01 18 views
5

TTreeView's ScrollBar Spiegelung nicht VCL Themen annehmen, wenn sie von diesem Code die Treeview-Spiegelung:TreeView des ScrollBar Ablehnen VCL Thema, wenn

procedure SetWinControlBiDi(Control: TWinControl); 
const 
WS_EX_NOINHERITLAYOUT = $00100000; 
WS_EX_LAYOUTRTL = $00400000; 
var 
ExStyle: Longint; 
begin 
ExStyle := GetWindowLong(Control.Handle, GWL_EXSTYLE); 
SetWindowLong(Control.Handle, GWL_EXSTYLE, ExStyle or WS_EX_RTLREADING or WS_EX_RIGHT 
    or WS_EX_LAYOUTRTL or WS_EX_NOINHERITLAYOUT); 
end; 


procedure TForm2.FormCreate(Sender: TObject); 
begin 
    SetWinControlBiDi(TreeView1); 
end; 

Beispielbild:

enter image description here

, was soll ich tun?

pls mir helfen ...

+1

Sie wissen nicht, was genau falsch ist, aber es funktioniert, wenn Sie @ RRUZ ausgezeichneten umfassen [Vcl.Styles.Hooks] (https://github.com/RRUZ/vcl-styles-utils/wiki/VclStylesHook) Einheit – whosrdaddy

+0

Zusätzliche Anmerkung, wenn Sie 'BiDiMode: = bdRightToLeft;' auf dem Formular dann die Bildlaufleiste wird richtig gerendert, aber die Baumansicht RTL-Modus wird nicht richtig gerendert ... – whosrdaddy

+0

Danke ... @whosrdaddy – smartiz

Antwort

7

Dies ist ein Problem in der TScrollingStyleHook Stil Haken, sollten Sie dies zu Embarcadero melden. Inzwischen können Sie das Projekt Vcl Styles Utils verwenden, um dies zu beheben.

Nur Sie müssen die Installationsanweisungen befolgen und dann dieEinheit zu Ihrem Projekt hinzufügen.

enter image description here

+0

Vielen Dank. @RRUZ – smartiz