자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

간단한 컴포넌트(FMX)를 만들어서 테스트해보려고 했는데, 의도되지 않은 결과가 나와서 질문드립니다.

설명: TRectangle을 상속받아 컴포넌트를 만듬.

      1. TLayout, TSpeedButton을 생성하여 컴포넌트(TNHSchedule)에 포함시키도록 코딩한 후 인스톨합니다.

      2. 설치된 컴포넌트를 빈폼에 올려보면 정상적인 듯 하지만,

      3. 실행파일을 만들어보면 이상하게도 TLayout, TSpeedButton이 하나씩 더 보여서 두 개 중복되는 오류발생.

          (디자인모드에서 컴포넌트를 Cut하고 Paste해보아도 같은 현상 발생)


컴포넌트 소스는 아래와 같습니다.   왜 그럴까요?   제 실수일까요?  델파이 버그일까요?



unit NHSchedule;

interface

uses
  System.SysUtils, System.Classes, FMX.Types, FMX.Controls, FMX.Objects
  , FMX.Layouts, FMX.StdCtrls;

type
  TNHSchedule = class(TRectangle)
  private
    fTopLayout: TLayout;
    fBtnYear: TSpeedButton;
  protected
    procedure Resize; override;
    procedure Paint; override;
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  published
    { Published declarations }
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('N&H4FMX', [TNHSchedule]);
end;


constructor TNHSchedule.Create(AOwner: TComponent);
begin
  inherited;
  fTopLayout := TLayout.Create(self);
  fTopLayout.Parent := self;
  fTopLayout.Align := TAlignLayout.Top;
  fBtnYear := TSpeedButton.Create(self);
  fBtnYear.Parent := fTopLayout;
  fBtnYear.Align := TAlignLayout.Center;
  fBtnYear.Text := '2016';
end;

destructor TNHSchedule.Destroy;
begin
  inherited;
end;


procedure TNHSchedule.Paint;
begin
  inherited;

end;

procedure TNHSchedule.Resize;
begin
  inherited;
  fTopLayout.Height := Height / 6;
  fBtnYear.SetBounds(0,0,Width /3, fTopLayout.Height/2);
end;


end.

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15761
공지 유용한 관련 사이트 관리자2 2014.03.20 54577
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97974
753 델파이XE8에서 2차원배열 넘기기가 기존과 바뀌엇나요? [2] 헨씀히포 2016.02.27 705
752 y\Frameworks\AudioToolbox.framework 생성되지 않습니다. kerry 2016.02.29 129
751 BLE 기기와의 연결문제 [3] 라드 2016.02.05 1573
750 애플앱스토어 등록시 맥북외에 아이폰이나 아이패드 같은 디바이스도 필요한가요? [1] kerry 2016.02.18 324
749 Application Store 로 컴파일 하면 다음과 같은 에러가 나옵니다. [3] kerry 2016.02.18 221
748 1217 질문 연장 Update Local File Cache 시 다음과 같은 메세지가 뜹니다. [2] kerry 2016.02.19 134
747 SDK Manager에서 "Update Local File Cache" 후 Directory does not exist: /...../clang/7.0.0/ 오류가 발생합니다. [2] kerry 2016.02.22 491
746 xe2 64bit 문의 [1] file 김희정 2016.02.19 376
745 Java2OP.exe로 jar 브릿지 파일을 만들고 프로젝트에 추가 후 컴파일 시 오류가 발생합니다. file 험프리 2016.02.19 1058
744 애플앱스토어 등록 상세 기술자료는 없나요?? [2] kerry 2016.02.16 279
743 CodeSiteExpress 관련 문의드립니다. [1] 비내림 2016.02.15 718
742 블루투스 페어링하는 방법을 알고싶습니다. [1] 무처니 2016.02.15 1154
741 XE10(Delphi 10 Seattle)에서 VCL테마(Vcl.Themes) 사용시 TPopupMenu는 테마 안타게 하는 벙법좀 알려주세요. [1] andy.park 2016.01.29 454
740 델파이7에서 String 변수 값이 메모리에 남습니다. [1] 농약먹고쿠 2016.02.04 450
739 Ctrl + Space로 자동완성이 안될때 해결책 험프리 2016.02.03 1536
738 tStringGrid 버그 확인 요청 [1] 조성긍1 2016.02.01 204
737 RESTClient에서 POST가 안되요!!! [1] 카이로스 2016.01.27 1246
736 XE10 컴파일시 에러가 나옵니다. [1] 텔로스김 2016.01.27 729
735 델파이 X2에 번들로 포함되 Installaware 에 대한 질문 [1] secret 볼테기 2016.01.29 7
734 jar파일을 사용하기 위하여 java2OP를 사용하는데 에러가 발생합니다. file 권혁상 2016.01.28 217