1

Delphi バージョン 5。まとめているファイル比較アプリがあり、メインフォームに左右のパネルがあります。各パネル (pnlLeft と pnlRight) には、名前だけで区切られた同一の範囲のコントロールとイベントがあります。つまり、btnCheckLeft(... および btnCheckRight(...) であり、2 つのパネル間でコードの変更を同期させるのに問題があります。

すべてのコントロールとイベントを含む単一のパネル (別のフォーム上) を作成し、実行時に pnlLeft 用に 1 回、もう 1 回、pnlRight 用に 2 回、メイン フォームにコピーできるかどうか疑問に思っています。その単一のフォームで、すべてを複製しようとするのではなく、一度だけコーディングを管理できます。

プロセス中に、Align と Event 名を設定して、次のように各コピーに適用します...

空白のメイン フォームへの最初のコピー...

pnlLeft.Align:=alLeft;
pnlLeft.Button1Click(Sender)...

2番目のコピー

pnlRight.Align:=alLeft;
pnlRight.Button1Click(Sender)...

それはどのように、または可能ですか?完全なパネルのコンポーネントが必要だと思いますが、この複雑なコンポーネントを作成するにはまだ十分なスキルがありません。

Delphi の TPanel を親とするすべての TLabels を別の TPanel にコピーする方法を確認 しました。

そしてこの 実行時にコンポーネントを複製する

しかし、どちらも私が必要とすることをするとは思わないでください。

あなたが助けることができる何かをありがとう.

4

1 に答える 1

6

問題の解決策は、実行時にコントロールを複製することではありません。代わりに、TFrameオブジェクトを設計します。必要なコントロールを含め、すべてのパネル固有のコードをそこに置きます。次に、インスタンスを 2 回作成し、それぞれに異なる名前を付けます。LeftPanel.btnCheckその後、およびを参照できますRightPanel.btnCheck

于 2013-06-06T17:52:29.373 に答える