Q&A

  • 폼의 타이틀 부분을 더블클릭 할때....
안녕하세요?



WM_SYSCOMMAND 를 사용하여 폼이 최대화 되었을 때 처리해야 할 루틴을

만들려고 합니다.

그런데 폼의 메뉴를 클릭하였을 때는 알수 있는데

폼의 타이틀 부분을 더블클릭하여 최대화 되었을 때

폼의 최대화 되었는지 알수 없습니다.



3  COMMENTS
  • Profile
    최용일 2000.07.25 03:22
    안녕하세요. 최용일입니다.



    폼의 타이틀바를 더블클릭해서 최대화될때는 다음과 같이 해보세요...



    procedure TForm1.WMSysCommand(var AMsg: TWMSysCommand);

    const

    SC_MAXIMIZING = 61490; // 폼이 최대화되기 전에 발생

    begin

    if AMsg.CmdType = SC_MAXIMIZING then

    begin

    ShowMessage('폼이 최대화됩니다.');

    // 어쩌구 저쩌구... 여기에 기술하세요...

    // 이 메세지를 무시하고자 한다면 CmdType에 0을 넣으면됩니다.

    // AMsg.CmdType := 0;

    end;



    inherited;

    end;



    ^^ 항상 즐코하세요.



    나원용 wrote:

    > 안녕하세요?

    >

    > WM_SYSCOMMAND 를 사용하여 폼이 최대화 되었을 때 처리해야 할 루틴을

    > 만들려고 합니다.

    > 그런데 폼의 메뉴를 클릭하였을 때는 알수 있는데

    > 폼의 타이틀 부분을 더블클릭하여 최대화 되었을 때

    > 폼의 최대화 되었는지 알수 없습니다.

    >

  • Profile
    Black}{ole 2000.07.25 03:05
    나원용 wrote:

    > 안녕하세요?

    >

    > WM_SYSCOMMAND 를 사용하여 폼이 최대화 되었을 때 처리해야 할 루틴을

    > 만들려고 합니다.

    > 그런데 폼의 메뉴를 클릭하였을 때는 알수 있는데

    > 폼의 타이틀 부분을 더블클릭하여 최대화 되었을 때

    > 폼의 최대화 되었는지 알수 없습니다.

    >





    안녕하세요. ^^

    아래처럼.. 하면 될것 같네요.

    참고하세요.



    그럼..20000.





    procedure TForm1.WMSysCommand(var Message: TWMSysCommand);

    begin

    inherited;



    if Message.CmdType = SC_MAXIMIZE then

    ShowMessage('최대화');

    end;

  • Profile
    최용일 2000.07.25 03:34
    안녕하세요. 강민주님. 최용일입니다.



    그동안 잘 지내셨는지요...



    왜 이럴까요.. 예전부터 이상하게 강민주님의 답변에 반박하는 답변을 많이 올린것



    같네요. 일부러 그렇게 하지는 않았지만 진짜 이상하게도 제가 알고 있는 것이라



    손이 저절로 가는것을 어떻게 할수가 없네요. 항상 너그럽게 봐주시고 있지만 혹시라도



    저에게 나쁜감정가지지 말아주세요... 그럴리는 없겠지만...



    너무 반복되는 일이라서 혹시나 하는 마음에 글을 남깁니다.



    ^^ 항상 건강하시고 즐코하세요.