demo_view_combobox.c 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. * 程序清单:label控件演示
  3. *
  4. * 这个例子会在创建出的view上添加几个不同类型的label控件
  5. */
  6. #include "demo_view.h"
  7. #include <rtgui/widgets/combobox.h>
  8. struct rtgui_listbox_item items[] =
  9. {
  10. {"item 1", RT_NULL},
  11. {"item 2", RT_NULL},
  12. {"item 3", RT_NULL},
  13. {"item 4", RT_NULL},
  14. {"item 5", RT_NULL},
  15. };
  16. /* 创建用于演示combobox控件的视图 */
  17. rtgui_view_t* demo_view_combobox(rtgui_workbench_t* workbench)
  18. {
  19. rtgui_rect_t rect;
  20. rtgui_view_t* view;
  21. rtgui_combobox_t* box;
  22. /* 先创建一个演示用的视图 */
  23. view = demo_view(workbench, "ComboBox View");
  24. /* 获得视图的位置信息 */
  25. demo_view_get_rect(view, &rect);
  26. rect.x1 += 5;
  27. rect.x2 -= 5;
  28. rect.y1 += 5;
  29. rect.y2 = rect.y1 + 20;
  30. /* 创建一个label控件 */
  31. box = rtgui_combobox_create(items, sizeof(items)/sizeof(items[0]), &rect);
  32. /* view是一个container控件,调用add_child方法添加这个box控件 */
  33. rtgui_container_add_child(RTGUI_CONTAINER(view), RTGUI_WIDGET(box));
  34. return view;
  35. }