Q&A

  • 두개더 좀 귀찮으시겠지만...히히~
1.

각종 API함수를 보면 음...

예를 들어보이겠습니다...

(설명을 잘해야할텐데...함수기억이 잘 안나서 --;)

SystemInfoParameter(20, 0, "",0);

--> 상수 20이 예를들어서 AAA라고 치고...

20의 상수함수가 생각이 안나네요...흘 --;

여기서 상수 20이 어떻게 나올수 있나요???

계산법을 몰라서요...

아님 간단한 예제라고 부탁드리고,



2.

아래 씨빌더의 예제를 델파이로

어떻게 변경할 수 있나요???

----- 폼크기 제한의 씨빌더 예제 ------

Unit1.h에 다음을 추가..

private에

void __fastcall WMGetMinMaxInfo(TWMGetMinMaxInfo& Msg);



public에

BEGIN_MESSAGE_MAP

MESSAGE_HANDLER(WM_GETMINMAXINFO, TWMGetMinMaxInfo, WMGetMinMaxInfo)

END_MESSAGE_MAP(TForm)



Unit1.cpp에 다음을 추가..

void __fastcall TForm1::WMGetMinMaxInfo(TWMGetMinMaxInfo& Msg)

{

Msg.MinMaxInfo->ptMaxSize.x = 300;

Msg.MinMaxInfo->ptMaxSize.y = 250;



// ptMaxPosition은 최대화면 표시일때의 좌측상단 끝의 좌표

Msg.MinMaxInfo->ptMaxPosition.x = GetSystemMetrics(SM_CXSCREEN) - 300;

Msg.MinMaxInfo->ptMaxPosition.y = 0;



// 최소화 상태에서 늘릴 수 있는 최대크기

Msg.MinMaxInfo->ptMaxTrackSize.x = 300;

Msg.MinMaxInfo->ptMaxTrackSize.y = 250;

// 최소화 상태에서 늘릴 수 있는 최소크기

Msg.MinMaxInfo->ptMinTrackSize.x = 170;

Msg.MinMaxInfo->ptMinTrackSize.y = 150;

}

1  COMMENTS
  • Profile
    윤병익 1999.12.08 03:03
    copretns wrote:

    > 1.

    > 각종 API함수를 보면 음...

    > 예를 들어보이겠습니다...

    > (설명을 잘해야할텐데...함수기억이 잘 안나서 --;)

    > SystemInfoParameter(20, 0, "",0);

    > --> 상수 20이 예를들어서 AAA라고 치고...

    > 20의 상수함수가 생각이 안나네요...흘 --;

    > 여기서 상수 20이 어떻게 나올수 있나요???

    > 계산법을 몰라서요...

    > 아님 간단한 예제라고 부탁드리고,

    >

    > 2.

    > 아래 씨빌더의 예제를 델파이로

    > 어떻게 변경할 수 있나요???

    > ----- 폼크기 제한의 씨빌더 예제 ------

    > Unit1.h에 다음을 추가..

    > private에

    > void __fastcall WMGetMinMaxInfo(TWMGetMinMaxInfo& Msg);

    >

    > public에

    > BEGIN_MESSAGE_MAP

    > MESSAGE_HANDLER(WM_GETMINMAXINFO, TWMGetMinMaxInfo, WMGetMinMaxInfo)

    > END_MESSAGE_MAP(TForm)

    >

    > Unit1.cpp에 다음을 추가..

    > void __fastcall TForm1::WMGetMinMaxInfo(TWMGetMinMaxInfo& Msg)

    > {

    > Msg.MinMaxInfo->ptMaxSize.x = 300;

    > Msg.MinMaxInfo->ptMaxSize.y = 250;

    >

    > // ptMaxPosition은 최대화면 표시일때의 좌측상단 끝의 좌표

    > Msg.MinMaxInfo->ptMaxPosition.x = GetSystemMetrics(SM_CXSCREEN) - 300;

    > Msg.MinMaxInfo->ptMaxPosition.y = 0;

    >

    > // 최소화 상태에서 늘릴 수 있는 최대크기

    > Msg.MinMaxInfo->ptMaxTrackSize.x = 300;

    > Msg.MinMaxInfo->ptMaxTrackSize.y = 250;

    > // 최소화 상태에서 늘릴 수 있는 최소크기

    > Msg.MinMaxInfo->ptMinTrackSize.x = 170;

    > Msg.MinMaxInfo->ptMinTrackSize.y = 150;

    > }



    1번은 저도 잘 모르겠네요... 그런데..2번 같은 경우는.. 맞는지 모르겠지만...

    폼의 속성중에 Constraints속성이 있습니다... 속성앞에 '+'표시가 있는데...

    이 부분을 더블클릭하시면 속성이 몇게가 더 나옴니다.. 4개정도

    MaxWidth : 이것은 폼의 최대넓이..??? 가로

    MinWidth : 이건 당연히.. 최소...

    MaxHeight : 이것은 폼의 최대높이..?? 세로...

    MinHeight : 이건 당연히... 최소...



    MaxWidth를 100 이라고 하면 폼의 넓이는 100 까지밖에 않늘어 남니다...

    최소를 10으로 하면 당연히 10까지 밖에 않줄어들죠..



    도움이 되셨으면 합니다....