wxwidgets 怎么使用怎么在vs2010里使用

2011年 总版技术专家分年内排行榜第三2010年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第五
2012年4月 VC/MFC大版内专家分月排行榜第一
2012年5月 VC/MFC大版内专家分月排行榜第二2012年3月 VC/MFC大版内专家分月排行榜第二2011年7月 VC/MFC大版内专家分月排行榜第二2011年1月 VC/MFC大版内专家分月排行榜第二2010年12月 VC/MFC大版内专家分月排行榜第二2010年9月 VC/MFC大版内专家分月排行榜第二2010年6月 VC/MFC大版内专家分月排行榜第二2010年5月 VC/MFC大版内专家分月排行榜第二2010年4月 VC/MFC大版内专家分月排行榜第二
本帖子已过去太久远了,不再提供回复功能。wxWidgets是一个历史悠久、基础雄厚的,可跨多种平台的多功能图形用户界面库。最初它曾被命名wxWindows,它受着Windows的MFC的深远影响,很多概念都和MFC很类似,最初命名的基本含义也就是MFC的移植库,后面为了不让使用者引起“只能在Windows下使用”的歧义,才正式改名为wxWidgets。
1、下载wxWidgets 3.1和vs2012
·&&&&&&&&下载wxWidgets源码包(),我用的是3.02版;
·&&&&&&&&安装Visual Studio。我用的是VS 2012;
下载地址:http://sourceforge.net/projects/wxwindows/files/?source=navbar
我下载的地址是
下载完以后安装到任意目录下。(其实就相当于解压缩以下,下载的是源代码)
2、编译源码
a、解压wxWidgets的源码包,会得到一大堆文件。进入build\msw文件夹,这个文件夹内是专门为Visual Studio提供的工程文件。在里面能找到从VC7到V12的工程文件。我用的是VS 2012所以选择的是VC11。
b、开始编译。因为我们下载的是源文件,而要把转化为库文件(如果对库的概念不是很了解可以上网查查)就需要编译挣个解决方案,对于编译时间大家不用担心,非常的快!!!我编译23个项目大概花了3-4分钟的样子。
3、建立测试项目配置项目属性:
首先建立一个Win32空项目或者直接空项目都可以(注意如果建控制台项目后面会报错)。
将下面的测试源代码源代码加入到一个cpp文件中。
#include &wx/wx.h&
class MyApp: public wxApp
virtual bool OnInit();
class MyFrame: public wxFrame
MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size);
void OnQuit(wxCommandEvent& event);
void OnAbout(wxCommandEvent& event);
DECLARE_EVENT_TABLE()
ID_Quit = 1,
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_MENU(ID_Quit,
MyFrame::OnQuit)
EVT_MENU(ID_About, MyFrame::OnAbout)
END_EVENT_TABLE()
bool MyApp::OnInit()
MyFrame *frame = new MyFrame( _(&Hello World&), wxPoint(50, 50), wxSize(450, 340) );
frame-&Show(true);
SetTopWindow(frame);
MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)
: wxFrame(NULL, -1, title, pos, size)
wxMenu *menuFile = new wxM
menuFile-&Append( ID_About, _(&&About...&) );
menuFile-&AppendSeparator();
menuFile-&Append( ID_Quit, _(&E&xit&) );
wxMenuBar *menuBar = new wxMenuB
menuBar-&Append( menuFile, _(&&File&) );
SetMenuBar( menuBar );
CreateStatusBar();
SetStatusText( _(&Welcome to wxWidgets!&) );
void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
Close(true);
void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
wxMessageBox( _(&This is a wxWidgets Hello world sample&),
_(&About Hello World&),
wxOK | wxICON_INFORMATION, this );
IMPLEMENT_APP(MyApp)
现在编译这个文件显然是通不过的,下面要对编译选项进行配置
4、包含目录:
在项目——属性——VC++目录——附加包含目录下加入wxWidgets库的头文件(此头文件是安装文件夹里的include文件夹)
这样系统就能知道你引用的头文件来自哪里了
5、包含库目录(让系统知道你即将使用的库文件来自哪里。)
项目——属性——VC++目录——库目录在库目录里加入wxWidgets安装文件夹下的lib/vc_lib文件夹
6、使用库。
把项目要用到的lib附加到项目属性中
项目--属性--链接器--输入--附加依赖库项,编辑这里要非常注意!!!
加入库名称:
wxmsw31ud_core.lib
wxbase31ud.lib
wxtiffd.lib
wxjpegd.lib
wxpngd.lib
wxzlibd.lib
wxregexud.lib
wxmsw31ud_adv.lib
wxmsw31ud_html.lib
wxmsw31ud_xrc.lib
wxbase31ud_net.lib
wxbase31ud_xml.lib
wxexpatd.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
编译运行就出现了如下界面了:
wxWidgets不支持图形界面拖动那种设计方式,所以必须通过绝对位置和相对位置来确定各个控件的布局,故很多前辈推荐使用wxFormBuilder。
/****************************************************************************/
配置中出现的错误:
?& “MSVCRTD.lib(crtexe.obj): error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用”
出现这种报错是因为我之前建的是控制台项目,后来换成普通win32项目就好了。
下面两篇博客也有有提到此类错误:
wxWidgets和其他跨平台开发库比拼的PK图表:
本文已收录于以下专栏:
相关文章推荐
wxWidgets3.1源码下载(下载地址)wxFormBuilder工具下载(下载地址 )
二、静态编译wx3.1
打开源码目录,在build -》msw中找到wx_vc14.sln,...
转自:  http://blog.csdn.net/shalyf/article/details/
前往官网下载最新wxWidgets 3.0.0。
https://s...
人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..
Protobuf V3.1 Windows VS2012编译与使用
本教程针对使用VC++的用户。
1.准备环境:
Windows7 以上的电脑
Visual studio2012 以上,pro...
wxWidgets 是跨平台的基于GTK+的C++ 开源库。有点类似于windows平台的MFC。支持Windows,OSX,Linux和Unix的32位和64位结构。同时还支持一些移动平台如 win...
第一步: 安装 Visual Studio 2010 和 wxWidgets
1. 如果你没有安装 Visual Studio 2010, 在此可下载 Visual C++ 2010 Expre...
wxWidgets 是跨平台的基于GTK+的C++ 开源库。有点类似于windows平台的MFC。支持Windows,OSX,Linux和Unix的32位和64位结构。同时还支持一些移动平台如 win...
wxWidgets 是跨平台的基于GTK+的C++ 开源库。有点类似于windows平台的MFC。支持Windows,OSX,Linux和Unix的32位和64位结构。同时还支持一些移动平台如 win...
他的最新文章
讲师:汪剑
讲师:陈守元
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)刚试着用VS2010编译了一下wxWidgets 2.9.1【c++吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:291,546贴子:
刚试着用VS2010编译了一下wxWidgets 2.9.1收藏
没找到VC10的解决方案,于是用VC9转了一下MY GOD十几个工程只编译过了4个。。。于是老老实实返回MFC拖控件
c++培训课程,美国上市公司&达内&出品c++课程,15年教学经验,总监级c++讲师亲授!!达内首创&先就业后付款&模式.名企项目总监授课,成就&稀缺级&c/c++软件工程师
你不是不学MFC吗?反正我觉得很难
用MFC拖控件和学MFC是两码事我从没学过MFC也会拖控件。。。
完整学MFC和用MFC是两码事
那拖完了怎么用
回复:6楼会用类向导能看懂COMMAND神马的宏会写UpdateData其他的正在摸索中。。。
编译了mingw debug、lib版,用Code::Blocks创建了一个示例工程,直接编译链接,弄出一个57MB的怪物……目前编译dll中。。。只有wxPark能拖控件么?
楼主杯具了...
登录百度帐号推荐应用(一)&&在vs10下编译wxwidgets
一开始我的wxwidgets 的编译环境是mingw32的,并且想在这个环境下开发一个工作用的上位机。首先要先在wxwidgets下的实现串口的功能。标准安装的wxwidgets并没有串口的支持。所以开始从网上开始找相关的资料,并下载了几个版本的,可是总是编译不过。
最后在pudn上了一个wxctb-0.9的源码,下载地址
首先我看了..\wxctb-0.9\build 下的readme.txt,内容如下,
“wxCTBcomponent info
&--------------------
& Website:http://wxcode.sourceforge.net/components/wxctb
&Version: 0.9
&or foradditional support and tools:
&/extras.en.html
&Linux GCCcompiliation
&----------------------------------------------------------------
&Type 'makeDEBUG=x GPIB=x' or 'make -f GNUmakefile DEBUG=x GPIB=x'
Microsoft Visual C++compilation
&----------------------------------------------------------------
&Type 'nmake -f makefile.vc DEBUG=x GPIB=x'
&Borland C++ 5.0/5.5 compilation
&----------------------------------------------------------------
&Type 'make -fmakefile.bcc DEBUG=x GPIB=x'
Watcom C++ 10.6/11 and OpenWatcom compilation
&----------------------------------------------------------------
&Type 'wmake -fmakefile.wat'
&---------
&&&&&&&& - addedpython support for both, serial and gpib
&&&& - addedbakefile support
&&&&&&&& & 0.7
&&&& - added GPIB(Nation Instruments GPIB cards) support
&&&&&&&& & Authors' info
&-------------
&Joachim Buermann&&&&&&&&&
&Thanks to thefollowing people for their hints and patches:
发现该串口库并不支持mingw下的编译(其实一开始我试了N次在mingw对这个库进行编译,总是不成功。后来看了其中的readme.txt才发现了里面的玄机,看来看readme很重要啊)。于是我安装了visual stdio 10旗舰版,并在vs10环境下首先对wxwidgets进行了编译,再对wxctb-0.9进了编译。在这里又先插入几句,虽然wxwidgets支持vs2003,vs2008 和vs2010。我只试验了vs2008和vs2010 ,刚开始我下载的都是Express版本,发现都是编译不过。最后,我下载安装了vs2010的旗舰版本(X16-6UltimTrialCHS.iso),用这个版本就编译过了。我也没有其深究他版本为何编译不过。
Vs2010下wxwidgets编译的方法在以下链接
里的window栏里有详细的描述,请打开里面的
the office readme 超链下的文档,认真的阅读这篇文章就知道怎么用vs10编译wxwidgets了。
我用的编译命令是 && nmake /f makefile.vc,编译成功后,可以用codeblocks创建一个小的wxwidgets程序,看看是否可以正常的编译运行。若不是可能需要对项目进行些配置。
(二)&&在 vx10下编译wxctb-0.9
首先解压wxctb-0.9。然后运行vs10的控制台工具,如下图所示。
然后进入到wxctb-0.9所在的目录下。
D:\codeblocks\code\serialPort\wxctb-0.9\build&
,然后输入命令nmake –f makfile.vc (若是需要重新编译,输入命令nmake –a –f makefile.vc),编译正确后如下图所示,在lib目录下生成了2个新产生的dll文件
并在..\build \release目录下生成了一个cbtest.exe(它的原文件在samples\cttest.ext),如图所示,你可以根据机器实际串口的情况,修改代码重新编译,来测试程序是否能正确的打开和关闭串口。
编译完成后,控制台仍然给出了一些提示,告诉我们只要在继续使用nmake DEBUG=0 GPIB=0 wxinstall就可以把生成的库文件和头文件分别copy到wxwidgets相应的目录中。如下图所示
在控制台中继续使用nmake –f makefile.vc DEBUG=0 GPIB=0 wxinstall,如下图所示
这样wxctb-0.9就编译好了。
(三)&&我的串口测试软件
我在codeblocks上实现了wxwidgets下的一个小的串口程序,可以打开和关闭一个串口,可以设置波特率,可以接收字符等。如下图所示。
源码下载地址为:
http://download.csdn.net/download/will_yoda/7653713
&&&&&&&& 可以提供一点参考
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:857次
排名:千里之外
(window.slotbydup = window.slotbydup || []).push({
id: '4740881',
container: s,
size: '200,200',
display: 'inlay-fix'}

我要回帖

更多关于 vs wxwidgets 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信