작은 메뉴에서 여러 패널에 액세스 할 수있는 단일 창 응용 프로그램을 만들고 싶습니다. 나는 한쪽에서 패널을 밀어 넣고 싶다.TPanel in extra unit (디자이너 포함)
작은 데모 응용 프로그램을 만들었고 모든 것이 작동합니다. 유일한 문제는 내 데모 응용 프로그램에 대해 한 가지 형식으로 약 7 개의 패널이 있다는 것입니다. 그것들이 서로 위에 놓여 있기 때문에 그 패널들에 대한 개요를 유지하고 그것들을 바꾸기는 어렵다.
그래서 각 패널에 대한 추가 단위를 만들고 싶습니다. 원하는대로 패널을 디자인하고 변경 한 다음 코드를 사용하여 기본 폼에 추가 할 수 있습니다.
양식 fmx 파일을보고 패널 용으로 만들고 패널 용 .pas를 만들었습니다.
Unit2.pas :
unit Unit2;
interface
uses ...
type
TPanel1 = class(TPanel)
Label1: TLabel;
end;
var
Panel1: TPanel1;
implementation
{$R *.fmx}
end.
Unit2.fmx는 :
object Panel1: TPanel1
Left = 0
Top = 0
Caption = 'Panel1'
ClientHeight = 551
ClientWidth = 800
Visible = False
StyleLookup = 'backgroundstyle'
object Label1: TLabel
Position.Point = '(8,8)'
Width = 120.000000000000000000
Height = 15.000000000000000000
TabOrder = 9
Text = 'Panel1'
end
end
나는 지금 내 패널을 설계하는 디자이너를 사용할 수 있습니다. 내가 좋아하는 뭔가를 수행하여 기본 폼에서 사용 할 때 :
Panel1 := TPanel1.Create(Self);
Panel1.Parent := Self;
나는 단지 표준 TPanel과, 내가 디자인이 아닌 하나를 얻을.
모든 것을 동일하게 유지하고 기본 클래스를 TPanel에서 TForm으로 변경하면 예상대로 작동합니다 (테스트 할 .Parent 대신 .Show).
설계된 패널을 기본 폼으로 가져 오려면 어떻게해야합니까?
도움 주셔서 감사합니다.
이유가 프레임을 도입 한 이유 ... – whosrdaddy
@whosrdaddy와 동의하면 각 패널을 각 장치의 TFrame에 넣은 다음 1) 프레임을 만들고 2) 집합을 만들고 각 프레임의 부모를 양식의 기본 패널에 추가하십시오. –
나는이 문제가 Firemonkey에 있다고 썼다. Firemonkey에는 프레임이 없습니다. – Marks