添加进度条对话框,涉及到线程的应用。
progress_thread.h头文件
#include <wx/wx.h>
#include <wx/thread.h>
#include "window/my_frame.h"
class MyThread: public wxThread
{
public:
MyThread(MyFrame *handler) :
wxThread(wxTHREAD_DETACHED)
{
m_pHandler = handler;
}
~MyThread()
{
}
void Execute()
{
Create();
Run();
}
protected:
void *Entry();
MyFrame *m_pHandler;
};
enum
{
WORKER_EVENT ,
kThreadUpdateId,
};
progress_thread.cpp源文件
#include "window\image_thread.h"
#include <wx/gifdecod.h>
void *MyThread::Entry()
{
for(int i=1;i<21;i++)
{
wxThreadEvent* event = new wxThreadEvent(wxEVT_THREAD,kThreadUpdateId);
event->SetInt(i*100/20);
wxQueueEvent(m_pHandler->GetEventHandler(), event);
}
return 0;
}
my_frame.cp