2017-08-01 16 views
0

私はTStyleBookを使って、簡単なWindowsアプリケーションでカスタムTTreeViewを作成しています。 TreeViewStyleの "selection" StyleObjectにアクセスできますが、選択した項目のフォント色を変更する方法(またはその点についてTextSettingsを変更する方法)はわかりません。 アイテムが選択されているときにテキストのスタイルを選択することはできますか?どのようにそれを行うことができますか?FireMonkey TTreeViewで選択した項目のテキスト設定を変更する方法

Windows 10環境でのRad Studio 10.1 Berlinの開発。

ありがとうございます。

答えて

0

最後に私は間違った方法で問題に近づいていました。

私の解決策は、TreViewItemStyleを作成し、そのTActiveStyleTextObject(Delphi Berlin 10.1の「text」というオブジェクト)のプロパティを変更することでした。

項目が選択されているときにテキストの色を変更するという特別な問題については、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

嬉しいです。 –

関連する問題