掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
TCustomPanel上に動的生成したTPanelにコンポーネントを表示させるには? (ID:23564)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
解決ではないでしょう。 _InnerPanel.Color := clRed; あたりを、記述してみそ。 きっと素敵な結果になるはず。 ちなみに、_InnerPanelの存在理由は? このような、TPanelが多重に重なったコンポーネントで、デザイン時にさらにコンポーネントを貼り付けたりするには、dfmに書き出したり、読み込んだりできる機能を、 自分で実装しないといけないのでは? ちなみに、実行時に消えるのは、_InnerPanelが、dfmに書き出しされないから、 _InnerPanel上に乗ったLabelも、書き出しされず、存在が失われるため。 _InnerPanel以外の部分では、TCustomPanelから派生したコンポーネント(以降 TMyPanelと書きます)に 直接貼り付けられるから、dfmに書き出されて、正常になる。 また、_InnerPanel.Parent := Self.Parent; で、うまくいくのは、_InnerPanel.Color := clRed; を実行してみたらわかると思うけど、 ParentがTMyPanelと同じなることで、dfmへの書き出しが行われるからか、 または、TMyPanel上にTLabelが乗っかることで、通常の動作と同じになるため。 そんなわけで、 > ふぅ、ひとまず一安心だ。 なんてことは、ないと思います。 動いていると思っても、いずれどこかで挙動不審になるでしょう。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.