ftk學習記(combox篇)
阿新 • • 發佈:2017-05-18
stat combox ont article 窗體 reat ctx 編譯 argv
【聲明:版權全部,歡迎轉載,請勿用於商業用途。 聯系信箱: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函數就可以。就是這麽簡單。
下次看效果圖。
ftk學習記(combox篇)