0

値に応じて背景色が変化する値を表示する Firemonkey TGrid を作成しようとしていますが、firemonkey の新しい Styles のコツをつかむことができないようです。

Firemonkey Grid Control - Styling a Cell based on a value (OnGetValue 関数呼び出しを介して)のアドバイスと構造に従い、カスタム TTextcel 派生物を作成しましたが、背景色を変更する方法がまだ見つかりません。

試しFindStyleResource('background') as TRectangleましたが、これは常に nil を返します。

誰かがこれで私を正しい軌道に乗せることができますか?

[追加情報]
Mike Sutton が提案したことを実行し、それが私に夜明けをもたらし始めました ;) 編集ボックスはレイアウト構造を与え、それを TTExtCel コントロールにリンクすることができました。このようにして、. を通じて前景色を変更することができましたforeground: BrushObject

ただし、背景は TSubImage と TRectAnimation で行われます。私の理解が正しければ、TSubimage は一部を取り、これを Editbox にWindows7 Style.png表示します。TSubImage を TRectangle に置き換えて、BrushColor を変更するにはどうすればよいですか? 構造エディタ ウィンドウとプロパティ エディタ ウィンドウでは、TLayout 以外のスタイル要素を追加できません...

4

1 に答える 1

1

XE3を使用していると思います。XE3 のスタイルは背景などにビットマップを使用するため、「背景」スタイル コンポーネントが見つかったとしても、おそらく TRectangle にはなりません (したがって、このようなブラインド キャストを避ける必要があるのはなぜですか)。

フォームに TEdit をポップし、右クリックして [カスタム スタイルの編集] を選択します。次に、スタイルの内容が表示されます。必要に応じて変更できる場合もあれば、完全に再設計する必要がある場合もあります (カスタム ビットマップを使用するため、長方形に戻すためなど)。次に、各セルの StyleLookup プロパティを設定してそれを使用するか、スタイル StyleName を TextCellStyle に設定して、すべての TTextCell で自動的に選択されるようにすることができます。

[追加情報] スタイル エディタにオブジェクトを追加するには、オブジェクトをツール パレットから構造ペイン (画面の左上) にドラッグします。新しい要素を開始するには、最上位 (ルート) アイテムにドロップします。その後、それを StyleName に設定できます。その後、Stylebook を適用して閉じ、エディタに戻り、変更を有効にするためにダブルクリックする必要があります (はい、それは悪いことです)。

構造ペインでドラッグ アンド ドロップして、古いスタイルのアイテムを再利用できます。

于 2013-02-28T09:12:09.457 に答える