PrintDlg und Querformat
-
Hi,
ich möchte einen PrintDlg aufrufen und als Voreinstellung das Querformat haben! Mit dem folgenden Code geht das nicht:DEVMODE *lpdm = new DEVMODE(); lpdm->dmOrientation = DMORIENT_LANDSCAPE; PRINTDLG *lppd = new PRINTDLG(); lppd->lStructSize = sizeof(PRINTDLG); lppd->hDevMode = lpdm; lppd->Flags = PD_NOPAGENUMS + PD_NOSELECTION + PD_ALLPAGES; lppd->nFromPage = 0; lppd->nToPage = 0; lppd->nMinPage = 0; lppd->nMaxPage = 0; lppd->nCopies = 1; if (PrintDlg(lppd)) ShowMessage("OK"); delete lppd; delete lpdm;
Dialog wird zwar angezeigt aber immer noch mit Voreinstellung Hochformat!
Hab auch schon mit Google gesucht aber nichts brauchbares gefunde!
MfG
Alexander Sulfrian
-
Hat sich erledigt! Hab doch noch was gefunde:
PRINTDLG *lppd = new PRINTDLG(); lppd->lStructSize = sizeof(PRINTDLG); lppd->hDevMode = GlobalAlloc(GHND,sizeof(DEVMODE)); DEVMODE *lpdm = (DEVMODE *)GlobalLock(lppd->hDevMode); lpdm->dmSize=sizeof(DEVMODE); lpdm->dmFields=DM_ORIENTATION; lpdm->dmOrientation=DMORIENT_LANDSCAPE; GlobalUnlock(lppd->hDevMode); lppd->Flags = PD_NOPAGENUMS + PD_NOSELECTION + PD_ALLPAGES; lppd->nFromPage = 0; lppd->nToPage = 0; lppd->nMinPage = 0; lppd->nMaxPage = 0; lppd->nCopies = 1; if (PrintDlg(lppd)) ShowMessage("OK"); delete lppd; delete lpdm;
MfG
Alexander Sulfrian