Я не могу изменить LogLevel функций wxLog.Изменение wxWidgets LogLevel
Что бы я хотел достичь: зарегистрируйте все в лог-файле.
В следующем примере запись в основном работает, но я вижу только сообщения с LogLevel Warning
или Error
. Я думал, что установить logLevel с использованием wxLog::SetLogLevel(wxLOG_Info);
должно быть достаточно, но, очевидно, я чего-то не хватает. Любые намеки?
#include <wx/wxprec.h>
#ifndef WX_PRECOMP
#include <wx/wx.h>
#endif
#include <wx/stdpaths.h>
class TestApp : public wxApp
{
public:
virtual bool OnInit();
private:
FILE* m_pLogFile;
};
bool TestApp::OnInit()
{
m_pLogFile = fopen("c:\\tmp\\foo.txt", "a+");
if (m_pLogFile == NULL)
{
return false;
}
wxLogStderr* pFileLogger = new wxLogStderr(m_pLogFile);
delete wxLog::SetActiveTarget(pFileLogger);
wxLog::SetLogLevel(wxLOG_Info);
wxLogError(L"Error");
wxLogWarning(L"Warning");
wxLogInfo(L"Info");
wxLogVerbose(L"Verbose");
wxLogDebug(L"Debug");
wxFrame* pFrame = new wxFrame(NULL, wxID_ANY, L"Title");
pFrame->Show();
return true;
}
wxIMPLEMENT_APP(TestApp);
Также см. [Это фиксация] (https://github.com/wxWidgets/wxWidgets/commit/da7388c9c8f875c4136b79c547e7663fe9bc41f7) –