ImGui 控件(widgit)
按钮类控件会在被按下时返回真
输入框需要指定字符缓冲区的大小
普通控件
方法 | 描述 |
---|---|
void text(string str) | 文本控件 |
void text_colored([vec4] color, string str) | 带颜色的文本控件 |
void text_disabled(string str) | 禁用的文本控件 |
void text_wrappered(string str) | 自动折行文本控件 |
void label_text(string label, string str) | 标签文本控件 |
void bullet_text(string str) | 圆圈文本控件 |
boolean button(string str) | 按钮 |
boolean small_button(string str) | 小按钮 |
boolean arrow_button(string str, [dir] dir) | 箭头按钮 |
void image([image] img, [vec2] size) | 图片 |
boolean image_button([image] img, [vec2] size) | 图片按钮 |
void check_box(string str, boolean val) | 多选框 |
void radio_button(string str, number v, number v_button) | 单选框 |
void plot_lines(string label, string text, array data) | 折线图 |
void plot_histogram(string label, string text, array data) | 直方图 |
void progress_bar(number fraction, string overlay) | 进度条,进度的范围是0~1 |
void bullet() | 圆圈提示控件,会自动插入 same_line() |
void combo_box(string str, number current, array items) | 下拉框 |
void drag_float(const string label, number n) | 拖动条 |
void slider_float(string str, number n, number min, number max) | 滑动块 |
void input_text(string str, string text, number buff_size) | 输入框 |
void input_text_s(string str, string text, number buff_size, array flags) | 输入框,可提供参数 |
void input_text_hint(string str, string hint, string text, number buff_size) | 带有提示的输入框 |
void input_text_hint_s(string str, string hint, string text, number buff_size, array flags) | 带有提示的输入框,可提供参数 |
void input_text_multiline(string str, string text, number buff_size) | 多行输入框 |
void input_text_multiline_s(string str, string text, number buff_size, array flags) | 多行输入框,可提供参数 |
void color_edit3(string str, [vec4] color) | 三色色彩编辑器 |
void color_edit4(string str, [vec4] color) | 四色色彩编辑器 |
void selectable(string str, boolean selected) | 可选控件 |
void list_box(string str, number current, array items) | 列表控件 |
提示信息类控件
void set_tooltip(string str) | 设置提示信息框(跟随鼠标的信息) |
void begin_tooltip() | 开始提示信息布局 |
void end_tooltip() | 结束提示信息布局 |
菜单类控件
方法 | 描述 |
---|---|
boolean begin_main_menu_bar() | 开始主菜单布局 |
void end_main_menu_bar() | 结束主菜单布局 |
boolean begin_menu_bar() | 开始窗口菜单布局 |
void end_menu_bar() | 结束窗口菜单布局 |
boolean begin_menu(string str, boolean enabled) | 开始菜单项 |
void end_menu() | 结束菜单项 |
boolean menu_item(string str, string shortcut, boolean enabled) | 菜单项目 |
void open_popup(string id) | 显示弹出 |
boolean begin_popup(string id) | 开始弹出菜单布局 |
boolean begin_popup_item(string id) | 开始控件弹出菜单布局 |
boolean begin_popup_window() | 开始窗口弹出菜单布局 |
boolean begin_popup_background() | 开始背景弹出菜单布局 |
boolean begin_popup_modal(string title, boolean is_open, array flags_arr) | 开始弹出窗口布局 |
void end_popup() | 结束弹出布局 |
void close_current_popup() | 关闭当前弹出 |
标签类控件
方法 | 描述 |
---|---|
boolean begin_tab_bar(string id) | 开始标签栏布局 |
void end_tab_bar() | 结束标签栏布局 |
boolean begin_tab_item(string id, boolean is_open, array flags) | 开始标签页布局 |
void end_tab_item() | 结束标签页布局 |
void set_tab_item_closed(string id) | 关闭特定标签页 |
注意:只有标签栏或标签页成功打开才需要调用结束函数
表格类控件
方法 | 描述 |
---|---|
void columns(number count, string id, boolean border) | 插入表格 |
void next_column() | 进入下一个表格区域 |
number get_column_index() | 获取当前列索引 |
number get_column_width(number index) | 获取指定列索引处的宽度 |
void set_column_width(number index, number width) | 设置指定列索引处的宽度 |
number get_column_offset(number index) | 获取指定列索引处的 x 偏移量 |
void set_column_offset(number index, number offset) | 设置指定列索引处的 x 偏移量 |
number get_cloumns_count() | 获取列数量 |
位图(Bmp Image)
方法 | 描述 |
---|---|
number get_width([image] image) | 获取图片宽度 |
number get_height([image] image) | 获取图片高度 |
事件和方法
方法 | 描述 |
---|---|
boolean is_item_hovered() | 判断控件是否被鼠标悬停 |
boolean is_item_active() | 判断控件是否激活 |
boolean is_item_focused() | 判断控件是否在焦点 |
boolean is_item_clicked(number button) | 判断控件是否被点击(0=左键,1=右键,2=中键) |
boolean is_item_visible() | 判断控件是否可见 |
boolean is_any_item_hovered() | 判断是否有任何控件被鼠标悬停 |
boolean is_any_item_active() | 判断是否有任何控件激活 |
boolean is_any_item_focused() | 判断是否有任何控件在焦点 |
string get_clipboard_text() | 获取剪贴板文字 |
void set_clipboard_text(string str) | 设置剪贴板文字 |