|
임프랍니다.
상황을 잘 모르겠습니다만.. 빌더나 델파이에서 VCL로 만든 어플은 화면에 보이는 메인폼이 Win32 API의
메인 윈도우가 아니라, "진짜" 메인 윈도우는 뒤에 숨겨져 있습니다. 이 숨겨진 윈도우는 클래스 이름이
항상 TApplication이고 캡션은 작업표시줄에 나타나는 것과 같습니다.
그러므로, 폼이 아닌 어플을 미니마이즈하려면, 화면에 나타난 폼의 핸들을 미니마이즈해서는 안되고,
숨겨진 메인 윈도우를 미니마이즈시켜야 합니다.
ShowWindow(FindWindow("TApplication", "작업표시줄상의 캡션"), SW_MINIMIZE);
이렇게 하셔야 하지요.
그럼 이만...
Jun 님이 쓰신 글 :
: 답변해 주셔서 감사합니다.
: 박진훈님께서 말씀하신 것처럼 적용을 해보니까 이게 form1->Minimize()처럼 작업표시줄 위로 미니마이즈가 되네요....Application->minimize()처럼 작업표시줄 속으로 최소화할 수 있는 방법은 없을까요...
: SW_HIDE를 쓰니까 작업표시줄로 내려가긴 하는데 다시 보여지질 않습니다.
: 답변 부탁드립니다...
:
: 박진훈 님이 쓰신 글 :
: : FindWindow로 핸들을 가져오셨다면,
: :
: : ShowWindow(hwnd, SW_MINIMIZE)하면 안되나요?
: :
: : 정말 허접한 답변이네요....
: :
: :
: : Jun 님이 쓰신 글 :
: : : 안녕하세요...
: : : 요 밑에서 종료시키는 방법을 물어봤었는데요...
: : : 최소화시키는 방법은 없을까해서 이렇게 다시 물어봅니다.
: : : 종료시키려는 폼에 트레이아이콘이 구현되어 있는데 완전 종료는 트레이아이콘에서 하도록 되있거든요..
: : : 근데 다른 프로그램에서 강제종료를 해버리니까 그냥 종료가 되버리더라구요.
: : : 그래서 생각한 게 최소화를 시킬 수 있는 방법이 있으면 그렇게 하면 될 것 같아서요...
: : : 아시는 분은 답변 부탁드립니다...
: : :
|