掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
TabContorolのTab毎に背景色を変えたい(FMX) (ID:151417)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
yTakeといいます。 TabControlに3つTabItemを設定し、各々のTabで背景色を変えたいと思います。 TabItemに色のプロパティは見当たらない様ですので、 各TabItemにTPanelを配置して、そのパネルを塗りつぶす事を考えましたが、塗りつぶし自体は出来たのですが、問題があります。 各パネル上にはTPaintBoxやTCharなどが配置してあるのですが、パネルの塗りつぶしが最前面に来ていて、PaintBoxやChartが隠れてしまっています。 コンポーネントの配置上は、TPanelが背面、チャート等は前面に置いています。 ボタンをクリックするとPaintBoxへ図形を描画する様にして、描画後そのPaintBoxを”BringToFron”してみましたが、変わりません。 procedure TForm1.Panel1Paint(Sender: TObject; Canvas: TCanvas; const ARect: TRectF); begin case pa1 of 0: ; 1: begin Canvas.ClearRect( aRect, TAlphaColors.Red ); end; end; end; procedure TForm1.PaintBox1Paint(Sender: TObject; Canvas: TCanvas); var aRect : TRectF; pt1, pt2 : TPointF; aBr : TStrokeBrush; begin aRect := TRectF.Create( 0, 0, PaintBox1.Width, PaintBox1.Height ); aBr := TStrokeBrush.Create( TBrushKind.Solid, TAlphaColors.Darkmagenta ); pt1 := TPointF.Create( 50, 50 ); pt2 := TPointF.Create( 250, 250 ); case pb1 of 0: ; 1: begin Canvas.ClearRect( aRect, TAlphaColors.Cornsilk ); Canvas.DrawLine( pt1, pt2, 1, aBr ); end; end; end; procedure TForm1.Button1Click(Sender: TObject); begin pb1 := 1 ; PaintBox1.Repaint(); PaintBox1.BringToFront(); end; pa1とpb1はグローバルで定義してあって、pa1はForm1のCreateで’1’に設定しています。 どの様に解決出来るでしょうか? 当方、DELPHI XE6 FMX+Windows10です。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.