【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
很早之前就知道ftk了,当时主要是因为买了李先静的书,所以知道了这么一个项目。因为对这种gui的代码很感兴趣,所以在我闲暇的时候也会拿来看一看。从整个工程来看,代码非常工整,平台移植也方便,所以有兴趣的同学可以看一看。
一般对于一个开源项目,要深入地参与其中都要经历几个过程,这分别是使用、阅读、修改、重构。大多数公司里面也会使用到开源项目,但是往往停留在使用的阶段。所以,如果希望有深入了解的朋友还是需要自己腾出时间来好好研究一番才行。
网上下载ftk的地方很多,大家可以从code.google.com上面查找下载即可。对于ftk,大家可以理解成一个lib程序库,如果要想很好地使用它,那么一方面需要对底层的驱动进行移植,另一方面需要适配到各个os平台、compiler工具等等。没有关系,作者已经帮我们弄好了,我们可以建立一个仿真平台就可以了。
今天,我们不打算从编译、调试的角度来看ftk,而是从一个最简单的使用者来看怎么调用ftk。恰巧,作者也给我们提供了许多的demo代码。我们的学习不妨就从这些demo代码开始。学习新的编程语言,大家都是从hello world开始,我们不妨也从hello world开始ftk的学习。因为ftk的版本很多,所以本章以及后面所有的文章都是按照ftk 0.4版本作为参考使用的。
#include "ftk.h" int main(int argc, char* argv[]) { FtkWidget* win = NULL; ftk_init(argc, argv); win = ftk_app_window_create(); ftk_widget_set_text(win, "Hello FTK!"); ftk_widget_show(win, 1); ftk_widget_set_attr(win, FTK_ATTR_QUIT_WHEN_CLOSE); ftk_run(); return 0; }
这恐怕是demo中最简单的代码了。整个文件也不足20行。关于系统的代码,其实就两行,一行是ftk_init,另外一行是ftk_run。其他的内容都是自己编写的。整个流程非常简单,创建一个win,设置win的属性,开始while(1)运行ftk。是不是很简单?
如果大家有兴趣,可以好好理解一下这段代码。想看一下代码运行效果的同学,敬请期待下一篇文章。