在嵌入式Linux系统中应用的GTK 和X分析
的,是那些对 X 不够了解的人的一种误解.在经过裁剪后的情况下,GTK /X 要比 GTK /FB 与 Qt/E 还要来得有效,且 XLIB 对一般的应用程序有着更好的支持作用,应用程序的开发会变得更高效. 如何裁剪 GTK 我们可以从标准的 GTK 发行版本来裁剪,裁剪掉其中的不需要的,修改已经有的代码,并加入新的特性所需要的代码.裁剪的范围包括小的改动,也包括一些大的结构性的、核心的改变. 1、 去除 Widgets 窗口 最开始,我们把不需要的 Widgets 去除掉,比如:GtkGamma、GtkHRuler、过时了的 GtkList(被 GtkCList所替代了)、和我们不需要的 GtkFrame 边框. 拥有帝国一切,皆有可能。欢迎访问phome.net 2、 Widgets 窗口尺寸与绘制 接着,修改Widgets的大小与绘制方法,GTK 提供了一个主题引擎机制,来控制窗口的外观与效果.它允许在运行中设置字体,设置行间隔,设置绘制特性.这样的机制很不错,但不够灵活,代码中很多设置的地方都是使用硬编码的方式;另外,一种主题,就是一堆额外的代码段和参数,这样会增加整体的尺寸. 需要找出影响到窗口系统整体尺寸的内容,再来修改它.比如,一个按钮的大小与绘制,包括这样的参数:边框的宽度,x/y的位置(主题引擎需要的参数),缺省的间隔(常量),缺省的左上角的位置(常量),获得焦点.这些在嵌入系统中并不需要那么完整,我们可以根据实际的需求来简化代码,来避免GTK 的复杂性. 另外,使用面向对象的方法,来继承窗口Widgets的特性,作为子类也是一个有效的方法. 3、GtkWindow GTK 总是假定一个窗口里面包含了另一个窗口,它们就是嵌套关系.但对于我们经常会碰到的有软键盘的应用时,就不完全正确了.软键盘虽然是属于一个窗口的,但却会超出那个窗口.为了突破这个假定,需要对GtkWindow增加一些特性,将软键盘处理成一种特殊的子窗口. 软键盘所在的窗口,需要处理软键盘的按键事件,并将按键转发给软键盘工具条.当软键盘按下,软键盘的回调函数就被注册到原始窗口上,这样软键盘就会响应按键事件.在GtkWindow上增加接口,可以创建,响应按键. 在小屏幕的嵌入系统中,可以将滚动条做得更简化些,去掉边框,使用单个滚动条.这些都更适合嵌入系统.
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |