您的位置:首页 > 移动开发

在Code::Blocks上使用wxWidgets-2.8.0 (二)——开发篇

2007-01-20 16:05 393 查看
    终于进入正题了,我们先建立一个最简单的demo:
    (1) 建立工程
    用new projects建立一个wxWidgets application,在project option里使用Using UNICODE static wxWidgets libraries,当然如果你编译的是其他类型的库就选其他的。
    这时建立的工程使用的却都是wxWidgets-2.6.0的配置,你需要自己修改wxWidgets的配置。
    在左边栏的工程上点右键->Build Options进行配置.

    (2) 配置Custom variables
    WX_DIR配置为wxWidgets config时设的--prefix的目录,我的就是mingw啦。
    WX_CFG配置为$(WX_DIR)/bin/wx-config。

    (3) 配置directory
    Compiler:
    $(WX_DIR)/include/wx-2.8
    $(WX_DIR)/lib/wx/include/msw-unicode-release-static-2.8
   
    Linker:
    $(WX_DIR)/lib
  
    Resource compiler
    $(WX_DIR)/include/wx-2.8

    (4) 配置Linker
    将原来的mswxu去掉,改成wx_mswu-2.8
    再加上lib目录下的其他几个libwx开头的库,如wxpng-2.8。
    注意这些库一定要排在所有库的最前面,否则link的时候仍然会出错。

    (5) 编译运行
    最重要的时刻到了, 点击Build and Run吧!怎么样,出错了吧,因为还要改一些小地方:)
    这肯定是CB的bug了,你会看到new wxMenu时报错, 应该把""改成_(""), 这是因为我们现在建立的是Unicode程序,wxWidgets处理的字符串全都要加上"_()"这个宏.
    现在可以运行了吧~
    使用CB的wxSmith插件可以进行RAD开发, 大家可以看看这篇文章:
    WxSmith Tutorial & Pointers
    写的很详细,不过仍然是基于wx 2.6.0的,如果用在2.8的库上会出一些小错误,不过很好改,有空的话我再写吧~
   
    (6) something about CB
    CB的编辑器有个问题,就是对中文的支持不是很好,比如要把窗口的标题使用中文字符串就不行,不过这只是编辑器的问题,我们换个支持UTF-8的编辑器编辑这个源文件就可以了,比如emacs23:) 这样中文就能用在你的wxWidget里了吧~
    最后强烈推荐Code::Blocks,它的开发团队非常活跃,每天都会有进展,这点非常重要,听说Dev-CPP的原创人之一都已经跳槽到CB开发了~ 希望更多的人能支持这个IDE,毕竟开源界太缺少这样的工具了,虽然写代码我一般用emacs,但是要开发GUI程序的话,还是有个RAD工具最好了~
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息