티스토리 뷰
다이얼로그를 생성한 후에 Style 속성을 보면
다음과 같이 3가지의 속성이 있다. (Overlapped, Popup, Child)
Overlapped 와 Popup은 부모를 벗어나 새로운 다이얼로그를 띄운다.
다이얼로그를 띄울 때 차이점이 생기는데,
Overlapped는 Dialog Frame을 가지고 생성이 되고,
Popup은 Dialog Frame이 없이 생성되는 것이 기본이다.
(단, Popup창도 Overlapped처럼 Dialog Frame을 가지고 생성할 수 있음.)
Child는 버튼 처럼 하나의 컨트롤로 인식되어 부모 내부에 종속하게 된다.
보통 popup과 child를 많이 사용하는데 여기서 차이점은
popup은 윈도우 전체화면을 활용할 수 있고, child는 부모 다이얼로그 내부에서만 움직일 수 있다
예) 버튼 클릭으로 각 속성의 다이얼로그를 띄울 때
void CModelessDDlg::OnBnClickedButton1() { // TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다. m_dlg1 = new CDialog1; m_dlg1->Create(IDD_DIALOG1); //부모 다이얼로그 좌표 구하기 this->GetWindowRect(&rectParent); //속성 SW_CHILD시 m_dlg1->SetParent(this); m_dlg1->SetWindowPos(NULL,10,130,rectParent.Width()-10,rectParent.Height()-10,NULL); //속성 SW_POPUP시 //m_dlg1->SetWindowPos(NULL,rectParent.left+10,rectParent.top+130,rectParent.Width()-20,rectParent.Height()-10-130,NULL); m_dlg1->ShowWindow(SW_SHOW); }
속성별 SetWindowPos 좌표(0,0)는 다음과 같다.
1) Child : 부모다이얼로그 내부 좌표 (0,0)
- 따라서 SetWindowPos시 rectParent.left함수를 빌려오지 않고 부모 다이얼로그 내부에서 시작하기 때문에 10,130으로 값을 줄수있다.
2) Popup : 현재 윈도우 전체화면 좌표 (0,0)
- 전체화면 좌표기 때문에 전체화면 에서 부모 다이얼로그의 좌표를 가지고 있는 rectParent에서 좌표를 구해서 거기에 추가로 더해야한다.
이 점만 유의해서 작업하면 될듯..
더 자세한 내용은 아래의 사이트를 참조 하면 된다.
'Programming > MFC(C++)' 카테고리의 다른 글
[MFC] 대화상자 기반 ADO 사용하기 - 3 (0) | 2018.07.04 |
---|---|
[MFC] 컨트롤 캡션 개행 방법 (0) | 2018.07.04 |
[MFC] 대화상자 기반 ADO 사용하기 - 2 (5) | 2018.07.03 |
[MFC] 대화상자 기반 ADO 사용하기 (0) | 2018.07.03 |
[MFC] 엔터키, ESC 입력 무시 (0) | 2018.07.03 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- MFC
- 법정동코드
- 부가가치세전산매체
- 부가가치세
- Modeless
- MXCOMPONENT
- CMFCBUTTON
- c++
- sqlite3
- 전자신고파일설명서
- ADODB
- MFC ADO
- 모달리스
- 항공알파벳
- 프로세스이름변경
- 청년내일채움공제 만기신청
- Sticky Notes Loading
- MSSQL
- MFC Modeless
- 소켓
- 모달리스 다이얼로그
- 청년내일채움공제
- 세금계산서합계표양식
- 전자신고변환
- #자동업데이트
- SendMessage
- 스쿠트항공 환불받기
- 스티커메모로드중
- 해외송금확인
- ADO
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함