wxWidgets Problem

Ryu1991

Erfahrenes Mitglied
Hi, ich habe hier eine Fehlermeldung, scheint was mit wxWidgets zu tun zu haben, aber bisher hat das Programm super funktioniert, ich benutze den msvc - Compiler...:
Code:
error LNK2001: Nicht aufgelöstes externes Symbol ""protected: virtual int __thiscall wxTextCtrlBase::overflow(int)" (?overflow@wxTextCtrlBase@@MAEHH@Z)".
Ich kann damit leider nichts anfangen.
Ich weiß auch nicht genau, wann sie entstanden ist. Nur, dass das irgendwann dann gewesen sein muss, als ich diese Methode geschrieben habe:

C++:
void Mainpage::OnRunScript(wxCommandEvent &Event){
	wxStreamToTextRedirector redirect(Output);

	lua_State *L = lua_open();
    
	luaL_openlibs(L);
	tolua_BFCon_open(L);
	tolua_Lua_functions_open(L);
	tolua_Aim_open(L);
	
	stringstream Temp;
	Temp << "./lua/" << ScriptBox->GetString(ScriptBox->GetSelection()).c_str() << ".lua" << endl;

	Output->Clear();
	(*Output) << wxString(Temp.str().c_str(), wxConvUTF8) << _T("wird gestartet...\n");
	luaL_dofile(L, Temp.str().c_str());
}

Ich hoffe ihr könnt mir helfen.
Gruß me.
 
Zuletzt bearbeitet von einem Moderator:
Die Meldung ist eigentlich ganz klar. Der Linker vermisst eine Methode:

protected:

virtual int wxTextCtrlBase::overflow(int)

Da fehlt dir entweder eine Library in den Linker-Einstellungen oder ein Source-File. Vom Namen her scheint das ja eine Standard-wxWidgets-Member-Funktion zu sein.
 
Ja, ich kenne diese Meldung, das Problem ist nur, dass die Lib, in der das stehen soll, schon gelinkt ist.
Und, dass in der Methode ja nur ein neues Objekt deklariert wird, aus wxWidgets, das bisher nicht vorkam.
Das ist der wxStreamToTextRedirector. Und das der Fehler bei der TextCtrl auftaucht ist in so fern völlig sinnlos, als dass die von Anfang an dabei war, und es bisher die ganze zeit ging.

Habe eben rausgefunden, dass der Fehler dadurch auftritt, dass ich in der setup.h wxUSE_STD_IOSTREAM als 1 definiert habe. Allerdings muss ich das machen, wenn ich wxStreamToTextRedirector benutzen will.

Was könnte man statt dessen machen?
OK hat sich erledigt. Ich musste meine Core-lib neu Compilieren mit dem define: wxHAS_TEXT_WINDOW_STREAM 1
 
Zuletzt bearbeitet:
Zurück