erstellte Tabelle ausdrucken



  • also ich hab grad mir ne tabelle erstellt, gibts jetzt ne möglichkeit die mir auszudrucken!? oder kann ich den ganzen dialog ausdrucken!?



  • Zum Drucken eines CListCtrl habe ich mal was bei www.codeproject.com gesehen.
    Musst mal gucken ob du es findest und ob es auch unter embedded funktioniert.

    Was automatisches ist mir leider nicht bekannt, sowas muss man selbst machen. 😞



  • wie meinste das jetzt mit automatisch!? ich will das so machen, das wenn man auf einen button klickt die tabelle ausgedruckt wird. aber das geht erstemal ja!?



  • Plug-in class to support printing from a listview
    http://www.codeguru.com/Cpp/controls/listview/printing/article.php/c1047

    CPrintListCtrl Class
    http://www.codeguru.com/Cpp/controls/listview/printing/article.php/c1003

    die seite meinste doch bestimmt!?
    also der 1ste link, den kappier ich absolut nicht, viel zu mächtig.
    irgendwie funktioniert das 2te bei mir auch nicht, bzw bekomms net hin in mein programm mit einzubauen.



  • shader09 schrieb:

    irgendwie funktioniert das 2te bei mir auch nicht, bzw bekomms net hin in mein programm mit einzubauen.

    Wie hast du es denn versucht?
    "Irgendwie geht das nicht" ist irgendwie keine gute Problembeschreibung. 😉



  • Achso:

    shader09 schrieb:

    wie meinste das jetzt mit automatisch!? ich will das so machen, das wenn man auf einen button klickt die tabelle ausgedruckt wird. aber das geht erstemal ja!?

    Mit "automatisch" meine ich eine vorgefertigte Funktion der MFC.
    Es gibt also leider kein CListCtrl::PrintIt.



  • na ich hab den code
    [url]
    CPrintListCtrl cPrintListCtrl;

    cPrintListCtrl.SetListCtrl(<handle to list control>);
    cPrintListCtrl.Print(GetSafeHwnd(), "List Control");[/url]

    in nem neuen projekt eingefügt und versucht zu kompalieren, aber da kommen dann nur diese fehler;

    :\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(64) : error C2065: 'CPrintList1' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(64) : error C2146: syntax error : missing ';' before identifier 'cPrintListCtrl'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(64) : error C2065: 'cPrintListCtrl' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2228: left of '.SetListCtrl' must have class/struct/union type
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2143: syntax error : missing ')' before '<'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2065: 'handle' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2146: syntax error : missing ';' before identifier 'to'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2065: 'to' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2146: syntax error : missing ';' before identifier 'list'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2065: 'list' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2146: syntax error : missing ';' before identifier 'control'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2065: 'control' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2059: syntax error : ')'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(66) : error C2059: syntax error : ';'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(67) : error C2228: left of '.Print' must have class/struct/union type
    


  • shader09 schrieb:

    Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(64) : error C2065: 'CPrintList1' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(64) : error C2146: syntax error : missing ';' before identifier 'cPrintListCtrl'

    Da fehlt das include. 🙄

    cPrintListCtrl.SetListCtrl(<handle to list control>);
    

    Schau bitte nochmal GENAU hin. Willst du das 1:1 übernehmen?



  • CListCtrl::Print; das hier kennt er, würde das damit auch gehen!?



  • PrintListCtrl.h meinst doch bestimmt die datei, die ich inkludieren soll oder!?

    habs gemacht und es werden aus 15 fehlern = 20 fehler;

    c:\dokumente und einstellungen\schaaf\desktop\cprintlistctrl_demo\xcvyvd\printlistctrl.h(134) : error C2440: 'default argument' : cannot convert from 'char [14]' to 'const unsigned short *'
            Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    c:\dokumente und einstellungen\schaaf\desktop\cprintlistctrl_demo\xcvyvd\printlistctrl.h(134) : error C2548: 'Print' : missing default parameter for parameter 2
    c:\dokumente und einstellungen\schaaf\desktop\cprintlistctrl_demo\xcvyvd\printlistctrl.h(196) : error C2440: 'default argument' : cannot convert from 'char [6]' to 'const unsigned short *'
            Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    c:\dokumente und einstellungen\schaaf\desktop\cprintlistctrl_demo\xcvyvd\printlistctrl.h(197) : error C2548: 'SetHeadFont' : missing default parameter for parameter 1
    c:\dokumente und einstellungen\schaaf\desktop\cprintlistctrl_demo\xcvyvd\printlistctrl.h(202) : error C2440: 'default argument' : cannot convert from 'char [6]' to 'const unsigned short *'
            Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    c:\dokumente und einstellungen\schaaf\desktop\cprintlistctrl_demo\xcvyvd\printlistctrl.h(203) : error C2548: 'SetFootFont' : missing default parameter for parameter 1
    c:\dokumente und einstellungen\schaaf\desktop\cprintlistctrl_demo\xcvyvd\printlistctrl.h(208) : error C2440: 'default argument' : cannot convert from 'char [6]' to 'const unsigned short *'
            Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    c:\dokumente und einstellungen\schaaf\desktop\cprintlistctrl_demo\xcvyvd\printlistctrl.h(209) : error C2548: 'SetListFont' : missing default parameter for parameter 1
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2143: syntax error : missing ')' before '<'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2660: 'SetListCtrl' : function does not take 0 parameters
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2065: 'handle' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2146: syntax error : missing ';' before identifier 'to'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2065: 'to' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2146: syntax error : missing ';' before identifier 'list'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2065: 'list' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2146: syntax error : missing ';' before identifier 'control'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2065: 'control' : undeclared identifier
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2059: syntax error : ')'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(70) : error C2059: syntax error : ';'
    C:\Dokumente und Einstellungen\Schaaf\Desktop\CPrintListCtrl_demo\xcvyvd\xcvyvdDlg.cpp(71) : error C2660: 'Print' : function does not take 2 parameters
    

    da müssen gänsefüsschen hin oder!?

    cPrintListCtrl.SetListCtrl("handle to list control");
    


  • Hmmm, also heute hast du ja ein böses Brett vorm Kopf.
    Was heißt "handle to list control"?
    Was ist ein Handle?

    Das ist kein korrekter Code sondern ein Wink mit dem Zaunpfahl. Da soll die Variable rein, die dein ListCtrl repräsentiert.



  • wir haben hier einfach viel zu viel stress grad.
    und bin auch heute net gut drauf.

    Variabledie dein ListCtrl repräsentiert 😕 😕 😕

    was soll das jetzte heißen, steh schon wieder voll auf der leitung



  • Wenn so ein Stand erreicht ist, sollte man sich für mindestens 10 Minuten nach draußen begeben. Am besten mit einer Tasse Kaffee und dann einfach den Wolken oder Autos zusehen.
    In dem Zustand macht man sonst mehr Fehler als produktiven Code. 🙄

    Ich habe gerade in deinen anderen Thread geschaut und das gefunden:

    CListCtrl *pList = (CListCtrl*)GetDlgItem(IDC_LIST2);
    

    Versuch es also mit der Zeile zusätzlich und schreib dann pList in die Klammern. Ich hoffe die Funktion akzeptiert einen Zeiger, sonst musst du eine Controlvariable anlegen.



  • also sollte der code dann so aussehen;

    CPrintListCtrl cPrintListCtrl;
    cPrintListCtrl.SetListCtrl(<handle to list control>);
    cPrintListCtrl.Print(GetSafeHwnd(), "List Control");
    CListCtrl *pList = (pList*)GetDlgItem(IDC_LIST2);
    

    will das übrigens durch einen klicken auf einen button drucken.



  • unter windowsce kann man garnet drucken wie normal, da brauch man ne spezielle sdk.
    siehe hier;

    http://www.fieldsoftware.com/PrinterCE_Docs.htm

    nur mit welchem befehl kann ich jetzt sagen das der di tabelle drucken soll.


Log in to reply