在项目中需要用到程序更新的功能,同事介绍说是curl中的开发库很牛x,又是跨平台(他们 总是这么喜欢跨平台的东西 *_*),于是下载这个包测试了一下,确实不错。准备正式用到项 目中,以下一个例子用于从互联网上抓取一个文件下载到本地,并加上进度条显示,做得挺 简陋,不过功能差不多就这样了。
程序运行预览.
首先需要 加入多线程的机制,因为程序一边在下载文件,一边在显示进度条,单线程的方式肯定不行 ,所以我用到了wxTimer来实现,在downloadMain.h 中定义了一个wxTimer,并做了事件申 明.
DECLARE_EVENT_TABLE()
/***************************************************************
* Name: downloadMain.h
* Purpose: Defines Application Frame
* Author: (alan)
* Created: 2008-11-14
* Copyright: (谦泰 通讯)
* License:
**************************************************************/
#ifndef DOWNLOADMAIN_H
#define DOWNLOADMAIN_H
#include "downloadApp.h"
#include <wx/timer.h>
#include "GUIDialog.h"
class downloadDialog: public GUIDialog
{
public:
downloadDialog(wxDialog *dlg);
~downloadDialog();
void OnTimer(wxTimerEvent& event);
private:
virtual void OnClose (wxCloseEvent& event);
virtual void OnQuit (wxCommandEvent& event);
virtual void OnAbout (wxCommandEvent& event);
void downloadfile();
wxTimer* m_timerdown;
DECLARE_EVENT_TABLE()
};
#endif // DOWNLOADMAIN_H