wxWidgets access html file in zip package
2010-02-04 18:21
260 查看
/************************************************************************
* Description: 访问zip中的htm 之 Widgets学习
* Author: 陈相礼
* Compiled: VC8 + wxWidgets2.8.10
* Date: 04/02/10
************************************************************************/
* Description: 访问zip中的htm 之 Widgets学习
* Author: 陈相礼
* Compiled: VC8 + wxWidgets2.8.10
* Date: 04/02/10
************************************************************************/
/************************************************************************ * Description: 访问zip中的htm 之 Widgets学习 * Author: 陈相礼 * Compiled: VC8 + wxWidgets2.8.10 * Date: 04/02/10 ************************************************************************/ #include "wx/wx.h" #include "wx/image.h" #include "wx/html/htmlwin.h" #include "wx/fs_zip.h" class AppMain : public wxApp { public: virtual bool OnInit(); protected: private: }; class FrameMain : public wxFrame { public: FrameMain( const wxString& title, const wxPoint& pos, const wxSize& size ); void OnQuit( wxCommandEvent& event ); void OnBack( wxCommandEvent& event ); void OnForward( wxCommandEvent& event); protected: private: DECLARE_EVENT_TABLE() }; enum { // 菜单ID Minimal_Quit = 1, Minimal_Back, Minimal_Forward, }; // 事件表 BEGIN_EVENT_TABLE( FrameMain, wxFrame ) EVT_MENU( Minimal_Quit, FrameMain::OnQuit ) EVT_MENU( Minimal_Back, FrameMain::OnBack ) EVT_MENU( Minimal_Forward, FrameMain::OnForward ) END_EVENT_TABLE() // 指定入口类 IMPLEMENT_APP( AppMain ) // 入口开始点 bool AppMain::OnInit() { wxImage::AddHandler(new wxPNGHandler); wxImage::AddHandler(new wxJPEGHandler); wxFileSystem::AddHandler(new wxZipFSHandler); FrameMain *frame = new FrameMain( wxT("Zip and Html测试"), wxDefaultPosition, wxSize( 1024, 768 ) ); frame->Show( true ); SetTopWindow( frame ); return true; } wxHtmlWindow *html = NULL; FrameMain::FrameMain( const wxString& title, const wxPoint& pos, const wxSize& size ) : wxFrame( (wxFrame *)NULL, wxID_ANY, title, pos, size ) { wxMenu *menuFile = new wxMenu; wxMenu *menuNavi = new wxMenu; // 创建菜单 menuFile->Append( Minimal_Quit, wxT("退出(&E)") ); menuNavi->Append( Minimal_Back, wxT("后退(&B)") ); menuNavi->Append( Minimal_Forward, wxT("向前(&F)") ); wxMenuBar *menuBar = new wxMenuBar; menuBar->Append( menuFile, wxT("文件(&F)") ); menuBar->Append( menuNavi, wxT("导航(&N)") ); // 挂载菜单 SetMenuBar( menuBar ); // 设定状态栏 CreateStatusBar( 2 ); html = new wxHtmlWindow( this ); html->SetRelatedFrame( this, wxT("HTML:%s") ); html->SetRelatedStatusBar( 0 ); html->LoadPage( wxT("start.htm") ); } //---------------------------------------------------------------------- // 退出 void FrameMain::OnQuit( wxCommandEvent& WXUNUSED(event) ) { Close( true ); } //---------------------------------------------------------------------- // 后退 void FrameMain::OnBack( wxCommandEvent& WXUNUSED(event) ) { if ( !html->HistoryBack() ) { wxMessageBox( wxT("这是最后一条历史记录了~~~") ); } } //---------------------------------------------------------------------- // 前进 void FrameMain::OnForward( wxCommandEvent& WXUNUSED(event) ) { if ( !html->HistoryForward() ) { wxMessageBox( wxT("没有更多历史记录了~~~") ); } } /************************************************************************ 附:start.htm源码 <html><body> <h1>ZIP archive</h1> <h3>feature demo</h3> <p> Click on this <a href="pages.zip#zip:test.htm" mce_href="pages.zip#zip:test.htm">link</a> to load page stored in ZIP archive (<a href="pages.zip" mce_href="pages.zip">pages.zip</a>). Enjoy it! </body></html> 依赖: wxmsw28ud_html.lib wxmsw28ud_core.lib wxbase28ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib winmm.lib comctl32.lib rpcrt4.lib wsock32.lib odbc32.lib ************************************************************************/
相关文章推荐
- 图片的上传 下载 js html file 打包下载 .zip
- tomcat启动报错:java.util.zip.ZipException: error in opening zip file
- Eclipse europa 更新时 Error retrieving "feature.xml". [error in opening zip file]的解决
- Android Studio 首坑 Gradle sync failed: Cause: error in opening zip file 的错误
- Unable to locate JAR/zip in file system as specified by the driver definition: mysql-connector-java-
- How to access a value defined in the application.properties file in Spring Boot ( Externalized Conf)
- jetty-maven插件启动失败解决方法,java.util.zip.ZipException: error in opening zip file
- 出现 java.util.zip.ZipException: error in opening zip file 异常的原因及解决方法
- [存底]使用C#压缩/解压缩7-zip文件 zip/Unzip file using 7-zip in C#
- Debug Assertion Failed! FIle:afxhtml.inl Line 57的错误的解决
- SQL Server Backup file in standard Zip format
- Java RandomAccessFile的使用(转载的文章,出处http://www.2cto.com/kf/201208/149816.html)
- Loads the local HTML file into the web view in the app
- How to create a zip file in NetSuite SuiteScript 2.0 如何在现有SuiteScript中创建和下载ZIP压缩文档
- 在Linux中部署web项目 java.util.zip.ZipException: error in opening zip file
- 核心驱动文件操作 How to access file in Kernel Driver
- Tomcat:在部署war包的时候java.util.zip.ZipException: error in opening zip file
- ionic build Android错误记录 error in opening zip file
- Android studio出现:Cause: error in opening zip file
- maven install 读取jar包时出错;error in opening zip file