Querformat



  • Hallo! Hat irgendjemand ne ahnung wie ich vom programm aus querformat einstellen kann?

    thx

    MFG

    Hansi



  • Aloha,

    nen bißchen konkreter wäre schon schön... 🙂

    Ich denke aber das hier hilft als Denkansatz.

    CDC dc;
    	CPrintDialog dlg(FALSE);
    	dlg.GetDefaults();
    	dc.Attach(dlg.GetPrinterDC());
    
    	DEVMODE *my_devmode = dlg.GetDevMode();
    	my_devmode->dmOrientation = [b]DMORIENT_LANDSCAPE;[/b]
    	my_devmode->dmPelsHeight = dc.GetDeviceCaps(HORZRES);
    	my_devmode->dmPelsWidth = dc.GetDeviceCaps(VERTRES);
    
    	dc.ResetDC(my_devmode);
    

    Grüße

    BOA



  • Danke. Dann muss ich aber noch nen PrintDialog erzeuegen, weil ich hab vorher die Standard-Funktion genommen, naja is net schlimm.

    Danke

    MFG

    Hansi



  • Irgendwie klappts aber nich: Hier mein Code

    CDC* pDC; 
        CPrintDialog dlg(FALSE);
    	dlg.DoModal();
        dlg.GetDefaults(); 
        MessageBox("Hier gehts noch");
    
        pDC->Attach(dlg.GetPrinterDC());//Hier gibts probleme
    
        DEVMODE *my_devmode = dlg.GetDevMode(); 
        my_devmode->dmOrientation = DMORIENT_LANDSCAPE; 
        my_devmode->dmPelsHeight = pDC->GetDeviceCaps(HORZRES); 
        my_devmode->dmPelsWidth = pDC->GetDeviceCaps(VERTRES); 
    pDC->SetMapMode(MM_TWIPS);
    Text1.CreateFont(-350,0,0,0,400,FALSE,FALSE,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH | FF_ROMAN,"Times New Roman");
    

    Was mach ich denn nur falsch?

    MFG

    Hansi



  • Ich habs endlich hingekriegt. mit dem beitrag hier... http://www.c-plusplus.net/forum/viewtopic.php?t=6339&highlight=querformat

    der is echt net schlecht...

    Noch ma danke an alle

    MFG

    Hansi



  • Aloha,

    meiner bescheidenen Meinung nach, sollte es an der Stelle keine Probs geben, sondern ein paar Zeilen später.

    Wenn Du ein Domodal() machst, sprich den Druckdialog öffnest, um den User etwas einstellen zu lassen, brauchst Du den Devmode doch gar nicht mehr manuell setzen, dann kann doch der User sich horizontal einstellen ?!?!

    Bei meiner Variante, die ich aus meinem Projekt kopiert habe, kann der User nichts einstellen, sondern bekommt eine Liste ausgedruckt, wie ich mir das wünsche, deswegen benutze ich kein domodal().

    Außerdem fehlt mir irgendwie

    dc.ResetDC(my_devmode);
    

    um die Änderungen des devmodes zu setzen.

    Was ist denn genau die Fehleranzeige ?

    Grüße

    BOA



  • Also Windows wollte nen Problem-bericht senden, aber das hat sich jetz erledigt. Hab ja jetz ne lösung trotzdem DANKE.

    MFG

    Hansi



  • Aloha,

    na das nenn ich mal nen gleichzeitiges Posten.

    Ok,
    gut so.

    Grüße

    BOA


Log in to reply