ftk学习记(combox篇)

【声明:版权全部,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】

上一篇文章谈到了多窗体,还是依照约定看一下效果是什么样的。

假设大家细心一点。就会发现窗体中的label显示为window01,这事实上是由于我们已经添加了一个窗体,有兴趣的朋友能够尝试编译一下。如题所看到的,今天讨论的是combox。所谓的combox,事实上就是从给出的若干个选择挑选出一个就可以。

闲话少说,还是看代码。

#include "ftk.h"

#define IDC_TEST_BUTTON 1000
static Ret button_quit_clicked(void* ctx, void* obj)
{
	ftk_quit();

	return RET_OK;
}

int FTK_MAIN(int argc, char* argv[])
{
	int width = 0;
	int height = 0;
	FtkWidget* win = NULL;
	FtkWidget* button = NULL;
	FtkWidget* combo_box = NULL;

	ftk_init(argc, argv);

	win = ftk_app_window_create();
	width = ftk_widget_width(win);
	height = ftk_widget_height(win);

	width = width/2 - 10;
	combo_box = ftk_combo_box_create(win, 0, height/4, width, 50);
	ftk_combo_box_set_text(combo_box, "1 second");
	ftk_combo_box_append(combo_box, NULL, "1 second");
	ftk_combo_box_append(combo_box, NULL, "2 seconds");
	ftk_combo_box_append(combo_box, NULL, "3 seconds");
	combo_box = ftk_combo_box_create(win, width + 10, height/4, width, 50);
	ftk_combo_box_set_text(combo_box, "1 second");
	ftk_combo_box_append(combo_box, NULL, "1 second");
	ftk_combo_box_append(combo_box, NULL, "2 seconds");
	ftk_combo_box_append(combo_box, NULL, "3 seconds");
	ftk_combo_box_append(combo_box, NULL, "4 seconds");
	ftk_combo_box_append(combo_box, NULL, "5 seconds");
	ftk_combo_box_append(combo_box, NULL, "6 seconds");
	ftk_combo_box_append(combo_box, NULL, "7 seconds");
	ftk_combo_box_append(combo_box, NULL, "8 seconds");
	ftk_combo_box_append(combo_box, NULL, "9 seconds");
	ftk_combo_box_append(combo_box, NULL, "0 seconds");
	ftk_combo_box_append(combo_box, NULL, "0 seconds");

	button = ftk_button_create(win, width/2, height/2, width, 60);
	ftk_widget_set_text(button, "quit");
	ftk_button_set_clicked_listener(button, button_quit_clicked, win);
	ftk_window_set_focus(win, button);

	combo_box = ftk_combo_box_create(win, 0, 3*height/4+5, width, 50);
	ftk_combo_box_set_text(combo_box, "1 second");
	ftk_combo_box_append(combo_box, NULL, "1 second");
	ftk_combo_box_append(combo_box, NULL, "2 seconds");
	ftk_combo_box_append(combo_box, NULL, "3 seconds");
	combo_box = ftk_combo_box_create(win, width + 10, 3*height/4+5, width, 50);
	ftk_combo_box_set_text(combo_box, "1 second");
	ftk_combo_box_append(combo_box, NULL, "1 second");
	ftk_combo_box_append(combo_box, NULL, "2 seconds");
	ftk_combo_box_append(combo_box, NULL, "3 seconds");
	ftk_combo_box_append(combo_box, NULL, "4 seconds");
	ftk_combo_box_append(combo_box, NULL, "5 seconds");
	ftk_combo_box_append(combo_box, NULL, "6 seconds");
	ftk_combo_box_append(combo_box, NULL, "7 seconds");
	ftk_combo_box_append(combo_box, NULL, "8 seconds");
	ftk_combo_box_append(combo_box, NULL, "9 seconds");
	ftk_combo_box_append(combo_box, NULL, "0 seconds");
	ftk_combo_box_append(combo_box, NULL, "0 seconds");

	ftk_widget_set_text(win, "ComboBox Demo");
	ftk_widget_show_all(win, 1);
	ftk_widget_set_attr(win, FTK_ATTR_QUIT_WHEN_CLOSE);

	ftk_run();

	return 0;
}

相信大家看了上面的代码就不操心了。假设想创建combox,直接调用函数ftk_combo_box_create就可以;假设须要加入条目,调用函数ftk_combo_box_append就可以;假设须要设定默认选项,调用ftk_combo_box_set_text函数就可以。就是这么简单。

下次看效果图。

时间: 2024-10-13 05:42:06

ftk学习记(combox篇)的相关文章

ftk学习记(label篇)【转】

转自:http://blog.csdn.net/feixiaoxing/article/details/25000093 版权声明:本文为博主原创文章,未经博主允许不得转载. [ 声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 还是接着上面的一篇博文.之前曾经答应过大家,让大家看一下最简单的ftk程序是怎么运行的.所以,这里我们上传一下图片. 因为还是编辑模式,所以暂时还不能看到图片在网页中是怎么显示的.不过没有关系,这次只是做一个最初的尝试

ftk学习记(首篇)

[ 声明:版权全部,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 非常早之前就知道ftk了,当时主要是由于买了李先静的书,所以知道了这么一个项目.由于对这样的gui的代码非常感兴趣.所以在我闲暇的时候也会拿来看一看.从整个project来看,代码非常工整.平台移植也方便.所以有兴趣的同学能够看一看. 一般对于一个开源项目.要深入地參与当中都要经历几个过程,这各自是使用.阅读.改动.重构. 大多数公司里面也会使用到开源项目,可是往往停留在使用的阶段. 所以.

ftk学习记(label篇)

[ 声明:版权全部,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 还是接着上面的一篇博文. 之前以前答应过大家,让大家看一下最简单的ftk程序是怎么执行的.所以,这里我们上传一下图片. 由于还是编辑模式.所以临时还不能看到图片在网页中是怎么显示的. 只是没有关系,这次仅仅是做一个最初的尝试.假设大家有更好的意见,最好还是用微信扫一下头像或者私信给我,就能够了. 前面的代码还是比較简单的.今天,我们来学习一下label的显示方法.当然,无论大家是做windo

ftk学习记(icon篇)

[声明:版权全部,欢迎转载.请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 在開始今天的文章之前.我们还是先看一下上一节的效果图. 大家能够參照上一节的解说,是不是存在这种button,是不是存在这种wait_box控件,相同是不是能够看到wait_box活动的情形.当然,有条件的朋友最好自己编译一下这个demo代码.按步骤调试每一行代码. 今天,如标题所看到的.我们所学习的是icon的内容.简单一点说,此次基本的目的就是想在窗体上显示icon图像的内容. 至于怎样显

ftk学习记(输入框篇)

[ 声明:版权全部.欢迎转载.请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 昨天讲了进度条,我们还是看看它的运行效果是怎么样的.截图例如以下, 进度条使用的情况还是比較多的.只是有一种控件,我们遇到的机会很多其它.那就是输入框.非常难想象,没有输入框的gui是什么样的. 在网上购物或者买车票的时候.非常重要的一条就是输入自己的账户.password信息.所以说,没有输入的话,这些app都无法使用了.相同,我们能够看一下ftk下的输入框demo代码是什么样的. #inc

ftk学习记(waitbox篇)

[声明:版权全部.欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 前面说到了脚本.那么就看看ftk中demo与script搭配的效果是什么样的? 上面的效果图就相似于一个通讯录的输入功能,大家能够和之前的脚本对比起来看,检查一下是不是这种. 如题所看到的,今天所看到的的是waitbox.它出现的场合,通常是交互时间比較长的情况.比方说信用卡付款,游戏登陆等等.闲话不多.直接上demo代码. #include "ftk.h" static Ret b

ASP.NET MVC学习之过滤器篇(2)

下面我们继续之前的ASP.NET MVC学习之过滤器篇(1)进行学习. 3.动作过滤器 顾名思义,这个过滤器就是在动作方法调用前与调用后响应的.我们可以在调用前更改实际调用的动作,也可以在动作调用完成之后更改最终返回的结果,当然很多人一定不太明白这个到底可以干什么, 下面我们举一个比较实际的例子: 相信理解过网站的安全的一定知道跨站请求(CSRF具体可以自行百度,这里我就不去解释了),当然也有解决方案,那就是给页面中增加一个识别码,当页面进行POST请求时,首先判断识别码是否正确, 如果正确则继

Alex Fung魔方转法学习记

我学了Alex Fung魔方转法,这是一种精确的数学法,且是一种思路,一个系统解决方案,一种原理,不用死记硬背公式. 这是一篇学习记,所有用到的算法必须去原文查看具体的数学公式和Java Applet的演示.因为我还不会编程演示,所以本文不self-contained,而像是一个数学课抄录的笔记,只是记录我的学习过程. 首先,请拿纸和笔——数学公式必须自己写一遍,自己推导一遍,使得自己看到那些符号,心里不发怵,所以写只是为了变得信任眼熟亲切记得. 魔方基础的令人讨厌气噎眼花缭乱终于整个头脑都拧巴

Git学习——Git分支篇(未完)

Git学习--Git分支篇(未完) 前言 完成了Git学习的基础篇,继续学习Git的分支特性,这是Git出众之处. 目录 分支简介 分支创建 分支切换 分支新建与合并 分支新建 分支合并 遇到冲突时的分支合并 分支简介 首先,Git保存数据的方式比较特殊,保存的是文件的快照,而不是文件的变化. 因此,在执行提交( commit )操作时,Git会保存一个提交对象( commit object).该提交对象包含一个指针指向暂存的内容快照,同时包含作者的姓名.邮箱.提交时输入的信息和指向它父对象的指