인쇄미리보기시 MDI 어플리케이션에서 툴바,MDI client,MDI Child 윈도우 등을 감추고 인쇄미리보기 창을 전면에 띄워야 한다.
이때,MDI Client를 (class name:"MDIClient") Fake 하여 전체 화면을 차지해야 한다.
그런데 툴바나 다른 메인프로그램의 어플리케이션 고유 기능 중 만일 SetRedraw를 하는 경우는
이렇게 ShowWindow(SW_HIDE)나 SetWindowPos(SWP_HIDEWINDOW) 등으로 숨긴 메인프레임의 MDI Client 창이 별안간 WS_VISIBLE 속성이 되살아 나게 된다.
즉,SetRedraw(FALSE) 후 SetRedraw(TRUE) 가 자신의 코드 어디선가 호출된다면,갑자기 숨긴창이 SW_SHOW 될 것이므로 주의해야 한다. 결국,Window 가 visible 상태가 아닌경우는 함수 사용을 하지 않도록 해야 한다.
다음은 KFC library(자작 SDK API 기반 C++ 클래스기반의 윈도우즈 개발 라이브러리 툴킷이다)
의 함수 예이다.
/*
caution! if the window has not WS_VISIBLE result of called ShowWindow(SW_HIDE),
or SetWindowPos(SWP_HIDEWINDOW)
and then try to SetRedraw(TRUE),the Disabled window is shown as WS_VISIBLE.
so,beforecalling SetRedraw,check the window is visible now.
*/
void KFCWnd::SetRedraw(BOOL bRedraw)
{
if(m_hWnd && ::IsWindow(m_hWnd) && ::IsWindowVisible(m_hWnd))
::SendMessage(m_hWnd, WM_SETREDRAW, bRedraw, 0);
}
글타래
-
▼
2010
(51)
-
►
6월
(18)
- Lenovo T400 2764-RP8 모델 업그레이드 가이드
- IBM 레노버 터보메모리 대시보드 설치하기
- IBM 레노버 T400 에 터보메모리 추가 장착하기
- ‘북한 잠수함 행적’ 관련 합조단 거짓설명 논란
- 국회 천안함 특위도 ‘침몰 위기’
- ‘1번 어뢰’의 증거능력은 상실됐다
- 한나라,MB정권이 한반도 대재앙 백두산 화산폭발 외면했다
- 나이지리아전 차두리 실수 아니다, 오른쪽 센터링 허용한 김정우 실수다
- 美 한반도 연구가들 "한국전쟁에 대한 잘못된 인식 바꾸겠다"
- 천안함 생존자들 "물기둥-섬광-화염 못봤다"
- "천안함 데이터 치명적 오류…알루미늄은 거짓말 안 해"
- 해경 “천안함, 5km 표류하다 반파 후 침몰”
- 박주영,염기훈,오범석 병신트리오 3종세트를 빼야 8강 간다
- 이스라엘,미국이 천안함 격침했을 것
- 경기도지사 무효표 14만표 육박, 조작? 경기도 재투표 해야 할듯.
- 경기도지사 무효표수 9만표 ? 철저히 조사 해라!
- 6월2일 반민족,반통일,공안정국 쥐떼 박멸의 날로 선포!
- 천안함, ‘결정적 증거’가 ‘결정적 반증’
-
►
5월
(10)
- '美언론인' 웨인 멧슨 "천안함, 자작극" 주장
- 충격! 미언론이 폭로한 천안함 자작극
- [두루에디트 제작기] v1.2.1.7000 FTP기능 및 화면 캡쳐
- 두루에디트 FTP 기능구현을 위한 FTP 소스 디렉토리 목록 정리
- [두루에디트 제작기] FTP 기능편
- MinGW, wxWidget, Code:Blocks를 이용한 C/C++ IDE 환경 구축
- 1977년 발사해 33년간 137억KM 태양계밖으로 나간 보이저 2호 납치
- UFO - 반중력장치, 이온추진장치, 로스웰, 독일 나찌
- 반 중력장치의 실체
- 천안함 조작? 침몰 원인 결과 미국에서 이미 밝혔다
-
►
6월
(18)
2010년 4월 8일 목요일
피드 구독하기:
댓글 (Atom)
0 의 의견 있음:
댓글 쓰기