콤포넌트를 제작하였는데 폰트 속성을 Property로 정의하였습니다.
그래서 폼위에 올려놓고 폰트를 설정을 변경하면 디자인시의 폼위의 콤포넌트에는 적용이 되는데 실행을 시키면 디자인 타임에 설정한 것이 적용이 안되는군요. 물론 콤포넌트의 Create에 Font:= TFont.Create; 등은 물론 했구요...
아래는 생성자와 파괴자 입니다. 부탁합니다. 고수님들.....
참고로 다른 Property로 정의한 Field들은 초기화와 상관없이 Object Inspector에서 설정한 대로 설정이 됩니다. 폰트만 안됩니다.
constructor TChangStatusPanel.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
self.Parent:= TWinControl(AOwner);
FHeadFont:= TFont.Create;
FETCFont:= TFont.Create;
FHeadFont.Assign(self.Font);
FETCFont.Assign(self.Font);
......................
end;
destructor TChangStatusPanel.Destroy;
begin
......................
FreeAndNil(FHeadFont);
FreeAndNil(FETCFont);
inherited Destroy;
end;
FHeadFont.Assign(self.Font);
FETCFont.Assign(self.Font);
이 부분을 지우시고 다른 방법으로 폰트를 설정하심이..
아무것도 하지 않으면 부모의 폰트가 할당 됩니다.
아님 FHeadFont.Name := '굴림' 이렇게 해보세요.
도움이 되었으면 합니다.