2017-08-01 46 views
0

我正在使用TStyleBook在簡單的Windows應用程序中創建自定義TTreeView。 我可以訪問TreeViewStyle中的「選擇」StyleObject,但我不知道如何更改所選項目的字體顏色(或者如何更改任何TextSettings)。 在選擇項目時是否可以爲文本選擇樣式?如何做呢?如何更改FireMonkey中選定項目的文本設置TTreeView

在Windows 10環境下在Rad Studio 10.1 Berlin中開發。

在此先感謝。

回答

0

最後我以錯誤的方式接近問題。

我的解決方案是創建TreViewItemStyle並更改其TActiveStyleTextObject屬性(在Delphi柏林10.1中稱爲「文本」的對象)。

對於在選擇項目時更改文本顏色的特定問題,我只是將ActiveColor屬性更改爲我需要的顏色。

0

您可以在創建節點時設置文本設置,但我認爲您需要引用ResultingTextSettings。例如,您可以在創建節點(LNewNode)後使用以下代碼,其中SceneTreeView是FireMonkey TTreeView。

LNewNode := TwwSceneTreeNode.Create(SceneTreeView); 
LNewNode.Parent:= SceneTreeView; 
LNewNode.Text:= 'Node Text'; 
LNewNode.ResultingTextSettings.Font.Size:= 8; 
LNewNode.ResultingTextSettings.FontColor:= TAlphaColorRec.Red; 

如果您需要更改顏色的選擇,你將需要使用樹視圖的OnChange事件,然後設置字體顏色,並清除以前的選擇的字體。

if SceneTreeView.Selected<>nil then 
    begin 
    SceneTreeView.Selected.ResultingTextSettings.FontColor:= 
      TAlphaColorRec.Blue; 
    // Find way to clear earlier font color for 
    // prior selection and put code here 
    end; 
+0

對不起,如果我不是特別足夠的,但我想要的是如何使用我的TStyleBook解決這些設置,所以我不必爲每個樹中的每個項目做mannualy – TioGuedes

+0

很高興你明白了。 –

相關問題