MDIChild 폼 님이 쓰신 글 :
: Form1을 MDI Form으로 만들고
:
: Form2를 MDIChild Form으로 만들어서 실행해 보았는데
:
: 제가 Form1, 2에 BoardStyle를 bsNone라고 설정을 해두었는데요
:
: Form1은 폼 캡션 바가 안나오는데 Form2는 bsNone임에도 불구하고 나오는데 어떻게 안나오게 할순 없나요??
:
: 그리고 Form2 align을 alClient로 설정해놨는데 Form1사이즈의 클라이언트가 아니고 모니터 해상도의 클라이언트로 설정되던데
:
: 이것도 수정할 방법이 있나영?
답변:
VCL 구조에서 Align 이란 Control 들이 어떤 식으로 TForm에 놓여지느냐에 대한 상대적인 개념인데 뭔가 혼동하고 있는 듯 하네요.
따라서 childForm 을 MDI 클라이언트 영역 전체를 차지하게 하려면 Align 을 쓸게 아니고, childForm의 WindowState 를...
아래와 같이 wsMaximized 로 해줘야 하죠.
::SetWindowLong(childForm->Handle, GWL_STYLE, 0x56000000);
childForm->WindowState = wsMaximized;
VCL 라이브러리가 구현되어 있는 아키텍쳐 구조상... childForm은 bsNone으로 하는 대신, 위와 같이 Win32 API로 직접
스타일을 지정해 줘야 합니다.
|