fltk,qt,codesys控件界面设计和开发及测试

2017-1-7    蓝蓝设计的小编

如果您想订阅本博客内容,每天自动发到您的邮箱中, 请点这里

Fltk是一个轻量级的界面库,但网上相关内容较少,多已过时。学习这个的很多都是嵌入式开发者,但是现在Qt等发展得很好,估计用Fltk的更少了吧。不过有一些单位,比如:列车显示屏上,就在用fltk开发,蓝蓝设计就在和中车下属的某研究所做相关的开发项目。也同时在做codesys界面设计和开发,这是新一代显示器上用的。fltk上要设计美观的和创新的界面,在实现上的确有点困维, 这个软件不太支持透明,图标的实现效果需要一个像素一个像素的绘试。在图片的使用上,老的显示屏上的cpu内存有限,贴图好看但太占内存,如果在fltk中重画,会花很多时间。

fltk是一个在界面设计方面有局限性实现效果的软件,相对来讲codesys这个平台就方便多了。


老外的研究人员对计算机都比较熟悉(国内的就差远了,尤其是地质方面的),他们有了新理论,就写一些专业软件,用来解决某一方面的特殊问题,例如时间序列里的频谱分析、变质岩里PTXM分析、分子模拟软件等,这些软件都是某一理论的创始人直接写的,一般人写不出来。很多程序使用Motif界面,只运行在类Unix系统下(国外学术机构还是类Unix系统比较多),虽然这些界面很古老,我感觉很舒服,软件功能很强。另外X下的作图软件Grace、Xfig、XPaint等,虽然界面古老,用起来别有一番风味,速度超快,很爽的。

我想科学程序对界面要求不高,但完全字符界面不利于软件的传播使用。写界面用本地API太麻烦,要学大量的内容,又不能跨平台。想想学Win32 API或者Xlib编程,都是不容易的。Xt和Motif的API貌似比Xlib的原始界面还复杂。新的XCB基于GTK/Cairo/Clutter系的API格式,但文档缺乏,也很低层,尚未普及。Qt、WxWidgets、Gtk等虽然强大,也存在分发困难的问题(体积太大)。所以界面库的话,不用好看,但要功能实用,最好能跨平台,有基本的控件集,支持国际化字符、有较强的绘图功能就行了。Fltk很符合这些要求,它体积很小,适合静态连接(很多科学小程序是单文件的),跨平台,1.3开始支持utf-8,所有控件自绘,控件数量也颇多,支持OpenGL。这些都非常适合编写小巧的单文件图形程序。Fltk的API简单易学,比Motif、GTK等内容少得多,而且跨平台是它的一大优势。

目前图形程序向着个性化发展,注重设计个性化的图形元素、动画和高级触控等特性,而偏离了传统的基于Controls(或Widgets)的界面。Qt Quick和Clutter的出现,就是今后Qt和Gtk+发展的方向。微软的WPF和Silverlight技术也是这个趋势的体现。现在的新程序,例如迅雷7、酷我等流行软件,皮肤都是自绘的,而对界面库现成控件的功能利用较少。Fltk本身的架构是比较适合这种趋势的,因为Fltk自己设计新控件和绘图都十分方便,所以完全可以使用自绘设计出非常漂亮的界面。

但Fltk的学习仍然麻烦,因为文档太少。官方的1.3文档比价全面,但是要没有什么基础的人通过看文档和源代码学习还是很难的。我最近为了搞定Fltk用中文字体显示中文,花了不少功夫。网上的资源很有限,很多论坛的提问也没什么好答案。Fltk本来也有不少问题,有待改进。因此我想有时间可以写一个Tutorial,从中文用户的需求出发,教Fltk的使用。

本来对于对于跨平台的程序,Qt和QtQuick非常完美,但是其较大的运行时使之不适合写小程序。如果要写的系统规模较大,Qt自身的运行时则可忽略不计,那么Qt就是最佳的选择了。

蓝蓝设计也用qt给中车做过两套界面设计和开发,效果是非常佳的。

蓝蓝设计www.lanlanwork.com )是一家专注而深入的界面设计公司,为期望卓越的国内外企业提供卓越的UI界面设计BS界面设计 、 cs界面设计 、 ipad界面设计 、 包装设计 、 图标定制 、 用户体验 、交互设计、 网站建设 平面设计服务



日历

链接

个人资料

蓝蓝设计的小编 http://www.lanlanwork.com

存档