안녕하세요. 천리안 프로그래머 포럼 C++Builder 담당자 임펠리테리입니다.
참고로 더 코멘트를 붙입니다.
말씀드린 윈도우의 타이틀바 문자열을 바꾸는 API함수는 SetWindowText()입니다.
이 함수를 사용해서 캡션을 바꾸면 원하시는 결과를 얻을수 있을겁니다.
그런데 약간의 문제가 생깁니다. 그것도 아주 재미있는 문제네요.
먼저, 폼이 안움직입니다~! 사이즈도 안바뀌구요. 좀 황당해서 이리저리 갖고놀다보니
다행히 미니마이즈와 맥시마이즈 버튼은 되더군요. 근데... 꼭 해보시기 바랍니다.
재미있는 결과가 나옵니다. 숨겨졌던 원래의 메인 윈도우가 튀어나옵니다. 그러면서
그 이후로 가짜 메인폼에 대한 메시지는 전부 실제 메인윈도우가 다 가로챕니다.
그러니까, 가짜 메인폼을 리사이즈하면 가짜메인폼은 그대로 있구요, 진짜 메인 윈도
우가 리사이즈되구요, 무브도 마찬가집니다. 말만들어도 웃길텐데, 실제로 해보면
황당하기 그지없습니다.
결국 말해서.. 이대로는 그대로 쓸수가 없겠다는 말씀이죠. 약간 더 편법을 써야 하겠
는데.. 그럴수 밖에 없는것이, 따지고보면 VCL에서 가짜 메인폼을 진짜인척하고 속이
는데서 이 모든 문제가 생기는 거죠. 약간의 잔머리가 더 필요하겟습니다.
근데 지금은 너무 피곤해서.. 좀 눈좀 붙여야겠습니다. 지금 약 39시간 정도를 잠을
안자고 있는데.. 자고 일어나서 새벽에 다시 계속 답변을 드리죠. 너무 재미있는 문제
라서.. 꼭 해결을 해봐야 하겠습니다.
그럼 이만...
독립문에서 임펠리테리였습니다.
(cbuilder, skyhi18, cbuilder@thrunet.com)
|