ユニークな質問があります。Windows XP で Delphi 2007 を使用しています。TPageControl コンポーネントを含むフォームがあります。その PageControl 内に表示する Frame を作成しました。ボタンクリックイベントに基づいて表示される他の多くのフレームを作成します。フレームのタグプロパティを使用して、ボタンが押されたときにタグ番号を汎用関数またはプロシージャに渡して、関数またはプロシージャをすべてのボタンで再利用できるようにする方法はありますか? もう 1 つのアイデアは、tabsheets インデックス プロパティを使用して、それをフレーム タグ番号に一致させることでした。どんな提案も素晴らしいでしょう。前もって感謝します。
1364 次
1 に答える
2
次のような、タグ番号をフレームクラスにマップする関数が必要です。
type
TFrameClass = class of TFrame;
function GetFrameClass(const aClassID: Integer): TFrameClass;
begin
case aClassID of
1 : Result := TFrameFoo;
2 : Result := TFrameBar;
else Result := nil;
end;
end;
次に、フレームを作成できます。
var FrClass: TFrameClass;
Frame: TFrame;
begin
FrClass := GetFrameClass(btn.Tag);
if(FrClass <> nil)then begin
Frame := FrClass.Create(tabsheet);
Frame.Parent := tabsheet;
end;
于 2013-01-30T01:12:37.360 に答える