was includen für CImageList



  • Hallo Leute,

    ich verwende ein CImageList-Objekt, wofür ich "#include <afxwinforms.h>" verwende.

    Jetzt bekomme ich die Fehlermeldung:
    "MFC WinForms support requires /clr (doesn't support oldSyntax)"

    Was kann ich da machen?

    Vielen Dank und Gruß,
    Johannes



  • Wieso fragst du nicht die MSDN?

    Ansonsten: Welche Sprache verwendest du eigentlich? Reines C++ oder C++/CLR? Die Fehlermeldung klingt so, als ob du einen CLR-Header in einem reinen C++ Projekt verwenden wolltest.



  • Okay, wenn ich auf CLR verzichten möchte, was kann ich denn stattdessen nutzen, um eine ImageList zu nutzen.

    Konkret:
    ich habe eine tab control und möchte dort Icons einbauen, das geht, so wie ich das sehe, erstmal nur mit einer ImageList und da hakt es bei mir irgendwie.

    Hier der Code, bei dem das eingebaut wird:

    // init tab control:
        HWND hTC = GetDlgItem(pMeas->m_hwndDialogInfo, IDC_TAB_TAUMAP);
        TCITEM tci;
        memset(&tci, 0, sizeof(tci));
        tci.mask = TCIF_IMAGE | TCIF_TEXT | TCIF_PARAM;  // Blatz
    
        // add images to tabs
        CImageList m_imageTab;
        m_imageTab.Create( IDB_TABIMAGES, 13, 1, RGB(255,255,255) );
        TabCtrl_SetImageList(hTC, m_imageTab);
    

    wird auch alles als unproblematisch angesehen, nur eben der include im Header #include <afxwinforms.h> funktioniert halt natürlich nicht.

    Bitte um Hilfe. Vielen Dank



  • Ich muss das Ganze glaube ich etwas anders ausdrücken.

    Ich habe ein sehr nettes Beispiel, um in einem TabControl Icons zu verwenden:
    http://www.codeguru.com/cpp/controls/propertysheet/article.php/c611

    Ich muss ein vorhandenes Projekt von einem anderen weiterführen, bin selbst aber nicht aus der C++-Ecke.

    Das ganze Projekt ist offensichtlich ohne CLR-Support in Visual C++ geschrieben.

    Per #include <afxwinforms.h> habe ich es geschafft, dass zumindest die IDE mir keine Fehler mehr anzeigt, beim Kompilieren kommt dann aber "MFC WinForms support requires /clr (doesn't support oldSyntax).

    Ich habe mir nun ettliche Beispiele angesehen und ausprobiert, wie es funktionieren könnte, doch ich kriege es nicht hin und kenne mich in C++ noch nicht gut genug aus.

    Kann mir vielleicht jemand helfen, was kann ich statt CImageList auch mit Standard C++ verwenden oder wie kann ich mein Projekt portieren und ist das sinnvoll?

    Ich arbeite mit Visual Studio 2010.

    Vielen Dank.



  • Wie ich schon sagte:

    CStoll schrieb:

    Wieso fragst du nicht die MSDN?

    Bei den Dokumentationen der Klassen steht normalerweise auch dabei, welche Header/Libraries/whatever du benötigst, um sie nutzen zu können. Bei der CImageList steht z.B. der dezente Hinweis "Header: afxcmn.h" 😉


Anmelden zum Antworten