掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
コンポーネントのTImageの使い方 (ID:13411)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
確認しました。 type TPanelEx = class(TPanel) private FImage:TImage; public constructor Create(AOwner: TComponent); override; procedure Clear; end; TForm1 = class(TForm) Button1: TButton; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private 宣言 } public PanelEx:TPanelEx; end; var Form1: TForm1; implementation {$R *.dfm} constructor TPanelEx.Create(AOwner: TComponent); begin inherited Create(AOwner); BorderWidth := 4; FImage := TImage.Create(self); FImage.Parent := Self; FImage.Align := alClient; end; procedure TPanelEx.Clear; begin FImage.Canvas.Brush.Color := clLime; FImage.Canvas.FillRect(FImage.ClientRect); end; procedure TForm1.FormCreate(Sender: TObject); begin PanelEx := TPanelEx.Create(self); with PanelEx do begin Parent := Form1; Top := 10; Left := 10; Height := 200; Width := 200; end; end; procedure TForm1.Button1Click(Sender: TObject); begin PanelEx.Clear; end; として Button1Click を実行するとなんの問題もありません。しかし、 procedure TForm1.FormCreate(Sender: TObject); begin PanelEx := TPanelEx.Create(self); with PanelEx do begin Parent := Form1; Top := 10; Left := 10; Height := 200; Width := 200; Clear; end; end; として、初期化のなかで Clear を実行すると以後サイズの制御が出来なくなり ますね。alClient が効いてない感じです。 うーむ、すみませんがソースを追えないのでわたしには回避策は分かりません。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.