wxWidgets Tutorial Part I: Einführung in wxWidgets



  • Hallo,

    ich habe dieses Programm Versuch in Code::Blocks zu starten leider funktioniert es nicht! Ich kriege SEHR viele Errors heraus!
    Woran kann es liegen!

    Ich habe die WX Libary in Projekt-> Build Options -> Costum variables -> add den Link zu der Bibleothek $(link) eingegeben.

    Es kommen trotzdem vielle Fehler!

    Gruss Stefan



  • yo sieht bei mir ähnlich aus:

    Linker-Vorgang läuft...
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _free bereits in LIBCD.lib(dbgheap.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _exit bereits in LIBCD.lib(crt0dat.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _malloc bereits in LIBCD.lib(dbgheap.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _realloc bereits in LIBCD.lib(dbgheap.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _memmove bereits in LIBCD.lib(memmove.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _tolower bereits in LIBCD.lib(tolower.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __vsnprintf bereits in LIBCD.lib(vsnprint.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _calloc bereits in LIBCD.lib(dbgheap.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _strncpy bereits in LIBCD.lib(strncpy.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _abort bereits in LIBCD.lib(abort.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __snprintf bereits in LIBCD.lib(snprintf.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _fflush bereits in LIBCD.lib(fflush.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _sprintf bereits in LIBCD.lib(sprintf.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __close bereits in LIBCD.lib(close.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __write bereits in LIBCD.lib(write.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __commit bereits in LIBCD.lib(commit.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __get_osfhandle bereits in LIBCD.lib(osfinfo.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __CrtSetDbgFlag bereits in LIBCD.lib(dbgheap.obj) definiert
    MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _fclose bereits in LIBCD.lib(fclose.obj) definiert
    LINK : warning LNK4098: Standardbibliothek "MSVCRTD" steht in Konflikt mit anderen Bibliotheken; /NODEFAULT:Bibliothek verwenden
    wxmsw26d_core.lib(app.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__InitCommonControls@0
    wxmsw26d_core.lib(window.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp___TrackMouseEvent@4
    wxmsw26d_core.lib(statbr95.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__CreateStatusWindowA@16
    wxmsw26d_core.lib(spinbutt.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__CreateUpDownControl@48
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_Create@20
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_Destroy@4
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_GetImageCount@4
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_GetIconSize@12
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_Add@12
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_AddMasked@12
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_ReplaceIcon@12
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_Replace@16
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_Remove@8
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_Draw@24
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_SetBkColor@8
    wxmsw26d_core.lib(imaglist.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__ImageList_GetIcon@12
    wxmsw26d_core.lib(uuid.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__UuidToStringA@8
    wxmsw26d_core.lib(uuid.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__RpcStringFreeA@4
    wxmsw26d_core.lib(uuid.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__UuidCreate@4
    wxmsw26d_core.lib(uuid.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __imp__UuidFromStringA@8
    Debug/moinse.exe : fatal error LNK1120: 20 unaufgeloeste externe Verweise
    Fehler beim Ausführen von link.exe.

    tester.exe - 40 Fehler, 1 Warnung(en)



  • is es auch für Linux?

    mfg
    owner



  • Owner schrieb:

    is es auch für Linux?

    mfg
    owner

    wxGTK läuft natürlich auch unter Linux.
    Steht auch in Absatz 2.1



  • Guten Morgen,

    ich versuche mich auch gerade in C++ (wegen dem Studium) und habe von wxWidgets gehört. Ich nutze den DevC++ und habe versucht eine "HelloWorld" Tutorial einzugeben. Es scheitert aber schon am

    #include "wx/wx.h"
    

    Ich habe leider noch keine Anleitung gefunden, wie und wo ich im Compiler die Verzeichnisse richtig einstelle. Kann mir da vielleicht jemand weiter helfen?

    Vielen Dank im voraus

    lg Baseball



  • Wenn es richtig eingerichtet ist, muß die Zeile

    #include <wx/wx.h>
    

    heißen.
    Und schmeiß DevCpp weg!!!!!!!!!!!!!!!!!!!! Es ist veraltet und wird nicht weiter entwickelt. Man, ladet euch doch mal aktuelle Entwicklungswerkzeuge runter! Z.B. VisualC++2005 Express plus PSDK.
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-143003.html Dann kannst du dich auch hier nach dem Artikel richten und wxPack downloaden, das richtet dir dann alles ein.



  • Gibt es das erwähnte eBook aus einem der vorangegangenen Beiträge noch?
    Wenn das jemand noch hat und uppen würde, das wäre nett.
    Der alte Link ist nämlich tot.

    *** EDIT ***
    Es gibt das erwähnte eBook aus einem der vorangegangenen Beiträge noch!
    Wenn das jemand noch hat und uppen würde, das wäre unnötig.
    Der alte Link ist nämlich i.O.



  • Der alte Link ist nämlich tot.

    Nööööö.





  • Hallo,

    habs gerade auf meinem EeePC900A unter Ubuntu 8.04 mit g++ 4.2.4 und wx2.8
    kompiliert und musste dafuer folgende zwei Zeilen in der main.cpp in Schoenschrift verfassen.

    main.cpp:83

    txtctrl = new wxTextCtrl(this,-1,wxString((wxChar*)(""), size_t(0)),wxDefaultPosition,wxDefaultSize,wxTE_MULTILINE);
    

    main.cpp:130

    txtctrl->AppendText(dlg.GetValue() + wxString( (wxChar*)("\n"), size_t(1)) );
    

    Danach hat er es erst durchkompiliert und es lief.
    btw; Schoener Artikel und gutes Beispiel, Danke 🙂

    graetz 😃



  • Von Artchi

    Wenn es richtig eingerichtet ist, muß die Zeile

    #include <wx/wx.h>
    

    heißen.
    Und schmeiß DevCpp weg!!!!!!!!!!!!!!!!!!!! Es ist veraltet und wird nicht weiter entwickelt. Man, ladet euch doch mal aktuelle Entwicklungswerkzeuge runter! Z.B. VisualC++2005 Express plus PSDK.
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-143003.html Dann kannst du dich auch hier nach dem Artikel richten und wxPack downloaden, das richtet dir dann alles ein.

    Ich glaub ich greif auch wieder zu DevC++ zurück weil es keine vrnüptigen anleitungen oder so was gibt wie man das in Code::Blocks einfügen kann...



  • Musst du halt mal selber suchen, bist ja nicht der erste der C::B für wx nutzt.
    Eigentlich musst du nur die richtigen Pfade setzen, dann klappts auch.
    Ansonsten musste halt mal im Compiler/IDE Forum nachfragen.
    Oder unter forums.codeblocks.org



  • http://wiki.wxwidgets.org/CodeBlocks_Setup_Guide
    http://www.speakingx.com/blog/2008/04/24/codeblocks-wxwidgets-setup
    http://wiki.codeblocks.org/index.php?title=Compiling_wxWidgets_2.6.1_to_develop_Code::Blocks_(MSW)

    Ich weiß wirklich nicht wo das problem liegt? Es dauert nur paar sekunden wxWidgets mit Code::Blocks einzustellen. Ist ja in jeder IDE das selbe, include/lib dir zu wx ordner einstellen und fertig.



  • Also wenn was in C::B nicht funktioniert, müsste es eigentlich an der wxWidgets-Kompilierung liegen, also warum nicht wxPack herunterladen?



  • Hallo,

    Hab mal ne kurze Frage, leider konnte ich aus Google und der Onlinedokumentation nicht schlau werden und muss nun um Eure Hilfe bitten:

    Wie kann ich den Textinhalt eines Buttons editieren?



  • FrageWxWidgets schrieb:

    Wie kann ich den Textinhalt eines Buttons editieren?

    Mit wxButton::SetLabel()
    Hier der Link zur offiziellen wxWidgets-Doku: http://docs.wxwidgets.org/stable/


Anmelden zum Antworten