자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 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 39922
공지 유용한 관련 사이트 관리자2 2014.03.20 79450
2712 Quick Report 문의드립니다 신재철 2017.07.26 356
2711 10.1 Berlin Datasnap Server Method문제 불나방 2016.06.29 356
2710 안드로이드에서 Free 가 안되는 이유가 왜인가요? [1] 거북이 2015.12.05 356
2709 component 문의 입니다. [1] hims 2015.07.06 357
2708 재질문_하이브리드 앱 종료 방법문의 [1] 사랑남 2015.08.26 357
2707 RAD studio 10 에서 View 화면으로 보는 셈플들에 대해 문의 드립니다. youngdel 2016.04.27 357
2706 FMX THorzScrollBox 이미지 출력 관련 문의드립니다. 생각 2018.08.20 357
2705 델파이 10.3.3 Rio 에서 fastreport 가 어디 있나요? [1] 노력하는삶 2020.02.04 357
2704 RIO 10.3.1 에서 FastReport 를 설치 했는데 64bit 컴파일시 에러가 나옵니다. [2] 노력하는삶 2020.04.27 357
2703 [공유] iOS9에서 웹브라우저를 실행하면 앱이 비정상 종료됩니다. Humphery 2015.10.01 357
2702 안드로이드에서는 이상없이 되는데 ios에서 simulator 에서는 표시가 안되네요? [1] kerry 2015.11.02 357
2701 [질문] COM 객체 관련 [3] intotheblue 2017.02.10 357
2700 RAD Studio 10.1 Berlin에 대해 문의 드립니다. [1] file YSJ 2017.02.03 358
2699 [시작하는 사람들을 위한 델파이 프로그래밍] 모듈 8 - Exercise 2 [2] 관리자 2016.05.02 358
2698 델파이 시애틀로 ios 10버전의 기기 컴파일시 가능여부 [2] 김태윤 2017.06.12 358
2697 C Builder Active X 관련 문의 [1] file 한미반도체 2017.08.02 358
2696 RawByteString 클래스 사용이 안됩니다 [1] 손보라 2018.07.19 358
2695 상위버전에서 지원하는 REST.JSON 또는 System.JSON 을 사용할 수 있을까요? [2] 도의 2018.07.27 358
2694 [10.3.3 브리핑] RAD서버의 부하 분산 등은 어떻게 되나요? 험프리 2019.12.05 358
2693 RemObject 사용시 파일 업로드 삭제 방법? [1] 가나다 2020.02.06 358