![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编辑器/GUI工具开发
文章平均质量分 59
n5
在信息时代客观障碍已不复存在所谓障碍都是主观上的如果你想研发什么新的技术你不需要几百万美元的资金你只需要在冰箱里放满比萨和可乐再有一台便宜的计算机和与之献身的决心你即可拥有任何你想拥有的编程境界- John Carmack
展开
-
新版Eclipse中JFace需要的运行库配置
Eclipse3.2中,JFace所需的一些jar被包在了一个org.eclipse.equinox.common_3.2.0.v20060603.jar中了。加上jface,swt和core.commands3个jar一共需要4个jar。其实简单的方法是安装VE,就会有一个SWT的系统变量,选择include JFace就可以了 补充:如果要使用JFace的event机制,还需要原创 2006-08-23 13:54:00 · 2525 阅读 · 0 评论 -
wxGlade & wxFormBuilder
最近在使用wxPython写一个编辑器,做界面使用了wxGlade,以前我只用过wxWidgets+wxFormBuilder的组合,感觉wxPython+wxGlade确实效率更高些,当然这受益于python语言的简洁易用。几点使用体会:1)wxGlade自动生成的代码可以和自己写的代码和平共处。在使用wxFormBuilder时,除了生成界面代码,还要生成派生类代码,这样界面代码不需要做任何修原创 2009-03-08 11:37:00 · 8455 阅读 · 0 评论 -
wxWidgets滚动窗口绘图总结
wxWidgets滚动窗口绘图总结 问题:从wxScrolledWindow派生一个类CXCanvas,作为绘图的画布。画布的尺寸可能非常大,远远超出屏幕的大小,绘制的内容可能非常多,全部绘制一遍非常耗时,当滚动条滚动时,覆盖对话框移动时,以及窗口尺寸变换时要让窗口更新竟可能的快,并且要减少闪烁。分析:这个问题涉及到滚动窗口中的绘制,部分更新和减少闪烁。1)滚动窗口绘制,和普通的DC绘原创 2008-11-27 12:20:00 · 4226 阅读 · 1 评论 -
一个快速配置使用wxWidgets的好东西 - wxPack
http://wxpack.sourceforge.net/ A complete wxWidgets Development Kit. Includes: wxWidgets source/binaries, Visual Studio 7.0+ Project Wizard and Integrated Help, wxFormBuilder (RAD Tool), and vario原创 2008-11-20 00:13:00 · 3977 阅读 · 1 评论 -
Windows下编译wxWidgets 2.8.9
wxWidgets 2.8.9出来了以前用makefile编过wx,这次用IDE编译。 1)下载后安装到默认目录C:/wxWidgets-2.8.9/2)使用VC++2005,打开build/msw目录中的wx.dsw,提示转换工程文件格式,选yes to all3)可以选择Build/batch build...或逐个选择项目编译,由于batch build项目太多了,选择很原创 2008-10-25 19:34:00 · 2758 阅读 · 2 评论 -
py2exe试用小结
准备用wxPython写点东西,想release到没有python的系统上,于是试试py2exe。py2exe是一个将python脚本打包成可在windows下独立运行程序的工具。现在最新的版本是0.6.6,发布于2006.12.30,已经好久没更新了。适用的python版本是2.5。首先下载安装,非常方便,不必多说。然后看下里面的sample,写了一个setup试了下: from d原创 2008-05-10 00:18:00 · 1897 阅读 · 0 评论 -
wxWidgets点滴(1)- 注意wxImageList的取出效率
我在开发一个2D游戏编辑器的时候,对于tileset使用wxImageList存放,本来是想利用他的方便性。可是运行时发现tileset的绘制速度非常慢,按照经验,不应该是绘图方面的问题,而且我也做了试验,发现如果直接用一个创建好的wxBitmap代替从wxImageList中取出的wxBitmap,速度就恢复正常了。看来是wxImageList的取出操作存在效率问题。查看wxIm原创 2007-07-05 09:31:00 · 2477 阅读 · 0 评论 -
wxWidgets在windows & VC++下的安装
版本和环境:wxWidgets 2.8.3Windows2000 sp4VC++ 6.0step1:下载wxMSW-2.8.3-Setup.exe,将其安装到C:/wxWidgets_283.(或下载zip包直接解压)安装后的文件夹中有全部的代码和文档以及示例。但没有编译好的lib。因为你可以按照自己的需要去编译。不过好歹要麻烦一下了,好在编译非常方便。step2: 编译之前的配置原创 2007-04-05 09:14:00 · 3347 阅读 · 0 评论 -
准备通过开源项目学习SWT
虽然SWT的书和资料都看了一些,但对于如何用SWT编写结构良好的GUI程序还是没有概念。突然想到可以通过学习开源项目来学习。于是上网一阵搜啊,结果找到了RSSOWL,下载了src,用Eclipse建立了一个工程,虽然有些错误标记(可能是SWT版本不同引起的吧?)但立刻可以开始看代码了,真不错啊,利用中午短短时间粗略看了一下,略有收获:)决定每天花一个小时时间学习吧原创 2006-08-14 13:27:00 · 2338 阅读 · 0 评论 -
打包独立的SWT/JFace应用程序
独立的SWT/JFace应用程序既是指脱离Eclipse环境运行的 程序。可作为一个普通Java程序运行。我的方法是将所用的库和自己的class打包到一个可运行Jar中,再wrap成一个exe。即可在装有java环境的windows系统中使用。打包过程当然是使用ant, 配合两个支持ant的工具:混淆器proguard和exe封装工具JSmooth。步骤为:1 编译2 将class拷贝到临时目录r原创 2006-12-02 23:42:00 · 2495 阅读 · 0 评论 -
关于SWT drawLine bug的进一步验证
有网友在我的博客中指出,SWT不会出这样低级的bug, 负坐标不会引起内存地址错误。我也怀疑可能是程序其他部分的原因,为了证实这个问题,我进一步做了一些试验。首先写了一个最简单的hello SWT:public class helloSWT { static Shell m_shell ; public static void main(String[] args) { Displa原创 2006-07-02 22:51:00 · 2772 阅读 · 7 评论 -
SWT GC的drawLine方法的一个隐藏Bug
今天在用GC drawLine的时候发现一个奇怪现象。我是在一个Canvas里drawLine的,这个Canvas有滚动条,我只是在滚动条滚动时,计算Canvas里面绘制的偏移坐标,然后将所有的绘制操作加上这个坐标。我在Canvas里面drawImage, draw rect, draw line。当水平卷动时,我发现水平的line都错了,长度和位置都不对,而且随着卷动位置还会变化,有原创 2006-07-02 11:16:00 · 3135 阅读 · 3 评论 -
今天试用了VE开发SWT
感觉不怎么方便啊 首先是不支持FormLayout的可视化编辑这也就算了然后添加tool bar到 cool bar上也麻烦,不如自己写个工具函数方便其他没看呢不过用VE代码结构就由他说了算了原创 2006-06-30 14:12:00 · 2336 阅读 · 0 评论 -
SWT绘图需要注意的一个问题
SWT的drawImage比较慢,如果你有一些特殊的需要,比如从一张很大的图片中切出一块来,并进行翻转,而后画出,那么就会非常之慢。这种做法在游戏开发中非常常见。我也是在开发游戏地图编辑工具时发现这个问题的。 猜想可能最底层的实现上先将整张大图就行了翻转,而后切出部分绘制,所以非常慢。我试着将大图切成小图,对小图进行翻转绘制,结果快了5倍!对于这个问题,我的同事在一个国外论坛上发现一个有趣的帖子,原创 2006-11-02 21:59:00 · 2553 阅读 · 2 评论 -
学习SWT的一些资源
SWT主页,上面有教程:http://www.eclipse.org/swt/Getting Started with Eclipse and the SWThttp://www.cs.umanitoba.ca/~eclipse/SWT Programming with Eclipse http://www.developer.com/java/other/article.php/3原创 2006-06-05 13:12:00 · 2422 阅读 · 1 评论 -
在wxPython中使用OpenGL
参考资料只有wxpython doc的一个例子。需要安装pyOpenGL (pyOpenGL.sourceforge.net)给openGL使用的窗口容器是wx.glcanvas.GLCanvas,子类化它,并在子类的paint事件处理中这样处理:def OnPaint(self, event): dc = wx.PaintDC(self)原创 2009-07-12 14:31:00 · 2994 阅读 · 0 评论