Windows/MFC
페이지 설정 공통 다이얼로그 박스 CPageSetupDialog
aucd29
2013. 10. 2. 17:52
페이지 설정 CPageSetupDialog
[code]
PSD_DEFAULTMINMARGINS : 페이지 여백의 최소값을 프린터 최소값과 같은 값으로 설정
PSD_MARGINS : 페이지 설정 다이얼로그 박스의 여백 입력 영역을 활성화 시킨다.
PSD_INTHOUSANDTHSOFINCHES : 다이얼로그 박스의 여백 입력 영역 단위를 1/1000인치 단위로 설정한다.
CWnd* pParentWnd //부모 윈도우를 지정한다.
이 다이얼로그 박스 역시 DoModal()멤버 함수를 호출하여 화면에 다이얼로그 박스를 나타낸 후에 사용자의 입력을 받고 다음의 멤버함수를 이용 사용자의 입력값을 얻어올수 있다.
CString GetDriveName() const;
CString GetDeviceName() const;
CString GetportName() const;
HDC CreatePrinterDC(); //출력을 위한 프린터의 디바이스 컨텍스트를 얻는다.
CSize GetPaperSize() const; // 프린터에서 사용하는 용지 크기를 얻는다.
void GetMargins(LPRECT lpRectMargins, LPRECT lpRectMinMargins) const //현재 설정된 여백값 얻음
[/code]
[code]
void CCommonDlgView::OnPage()
{
CPageSetupDialog dlg(PSD_MARGINS | PSD_INHUNDREDTHSOFMILLIMETERS);
if(dlg.DoModal() == IDOK)
{
RECT rcMargin, rcMinMargin;
CString strTemp;
dlg.GetMargins(&rcMargin,&rcMargin); //페이지 여백의 정보 출력한다.
strTemp.Format("(Left,Top) : (%d mm, %d mm)\r\n(Right,Bottm) | (%d mm, %d mm)",
rcMargin.left/100, rcMargin.top/100);
MessageBox(strTemp, "여백정보출력");
}
}[/code]
[code]
PSD_DEFAULTMINMARGINS : 페이지 여백의 최소값을 프린터 최소값과 같은 값으로 설정
PSD_MARGINS : 페이지 설정 다이얼로그 박스의 여백 입력 영역을 활성화 시킨다.
PSD_INTHOUSANDTHSOFINCHES : 다이얼로그 박스의 여백 입력 영역 단위를 1/1000인치 단위로 설정한다.
CWnd* pParentWnd //부모 윈도우를 지정한다.
이 다이얼로그 박스 역시 DoModal()멤버 함수를 호출하여 화면에 다이얼로그 박스를 나타낸 후에 사용자의 입력을 받고 다음의 멤버함수를 이용 사용자의 입력값을 얻어올수 있다.
CString GetDriveName() const;
CString GetDeviceName() const;
CString GetportName() const;
HDC CreatePrinterDC(); //출력을 위한 프린터의 디바이스 컨텍스트를 얻는다.
CSize GetPaperSize() const; // 프린터에서 사용하는 용지 크기를 얻는다.
void GetMargins(LPRECT lpRectMargins, LPRECT lpRectMinMargins) const //현재 설정된 여백값 얻음
[/code]
[code]
void CCommonDlgView::OnPage()
{
CPageSetupDialog dlg(PSD_MARGINS | PSD_INHUNDREDTHSOFMILLIMETERS);
if(dlg.DoModal() == IDOK)
{
RECT rcMargin, rcMinMargin;
CString strTemp;
dlg.GetMargins(&rcMargin,&rcMargin); //페이지 여백의 정보 출력한다.
strTemp.Format("(Left,Top) : (%d mm, %d mm)\r\n(Right,Bottm) | (%d mm, %d mm)",
rcMargin.left/100, rcMargin.top/100);
MessageBox(strTemp, "여백정보출력");
}
}[/code]