自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 一个简单图形界面框架XYGui的设计与实现 (五)

到这里,没有什么技术含量的东西差不多就说完了,剩下的就是更没有技术含量的体力活了。修改XYGui_ext.c里面的窗口过程,让窗口能够响应更多的交互事件:比如支持拖拽文件到窗口:case WM_DROPFILES: // Drop files into the window // wParam is HDrop (Win32) __tmpcptr1

2016-11-29 08:09:07 1147

原创 一个简单图形界面框架XYGui的设计与实现 (四)

给窗口更多功能窗口出来了,但是什么实用功能都不能做的话,那也就太无趣了,我们想扩展出来更多的功能,比如与用户互动之类的。事件机制与请求机制XYGui提供一套事件机制和请求机制。先说说事件机制:在发生比如鼠标按下,窗口被拖拽入文件等,在窗口过程里面是可以截取到这些事件的,但是如何让XYGui库的用户自定义处理这些事件的方法呢?常用的套路是借助oop+重载,我们约定一下比如发生鼠标按下时,调用onBut

2016-11-29 07:52:09 2526

原创 一个简单图形界面框架XYGui的设计与实现 (三)

回顾上节解决了只用ruby语言制作窗口过程的问题。只用ruby语言的话,可以用局部变量_self = self,然后在Fiddle::Closure的匿名子类里面的call方法,借助_self变量访问ruby世界的”窗口对象”。但是用C语言的话,怎么办呢?CreateWindowEx这个函数最后一个参数,lpParam。一般我们都把它设为0,也就是无用。但是现在他就要派上用场了。这个参数可以传递一个

2016-11-29 07:07:02 1021

原创 从ruby到x86机器语言

(同步个人博客 http://sxysxy.org/blogs/69 到csdn    在最开始之前,我要特别感谢 兰兰姐姐 在相关技术上给予我的指导。也正是在兰兰姐姐的帮助下,我才能较为顺利地进行 XYGui 的开发。准备在这里我假定泥大概看过ruby的源码,知道怎么写ruby的c扩展,略懂一些汇编语言与操作系统相关的原理。请安装devkit for ruby(on windows)随便写个

2016-11-28 21:49:47 927

原创 [综合] 一个简单图形界面框架XYGui的设计与实现 (二)

封装!上一节最后用了30多行ruby代码做了一个窗口出来,看起来很是麻烦,如何像XYGui里面一样,一行就能创建那样的窗口呢?实际上这里面是有很深的套路的,本节开始,讲述XYGui对创建窗口的封装先解决一些技术上的问题:已编译成的机器语言与ruby语言互相调用没错,你没有看错,机器语言调用ruby语言!高版本的ruby(准确来说是ruby2.0之后)标准库里面就有了一个叫做Fiddle的东西,这个东

2016-11-28 21:46:59 757

原创 一个简单图形界面框架XYGui的设计与实现 (一)

前传和dram神犇做了个交♂易,我来发布一些关于制作一个Gui库的教程。借用林则徐的两句名言来描述我现在的心情:(这里省略14个字)简介这里我以半年多前我开坑的 XYGui 为讲解的对象。XYGui是一个几乎完全使用ruby语言开发的,简洁快速的,支持opengl等高级功能的Gui框架,是我学OI颓废之时抽空制作的….你需要准备:windows系统,ruby 2.x(32位),devkit for

2016-11-26 22:03:29 1114

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除