CBlueUI  
C++ 跨平台跨框架的数据可视化工具
载入中...
搜索中...
未找到
BUI::CTableViewUI类 参考

表格控件 更多...

类 BUI::CTableViewUI 继承关系图:

Public 成员函数

 CTableViewUI ()
 ~CTableViewUI ()
TableRowInsertRow (int pos, LPCTSTR text_row_data=NULL)
 插入文本数据
TableRowInsertRow (int pos, const BeString &text_row_data)
 同上
TableRowAppendRow (LPCTSTR text_row_data=NULL)
 末尾插入文本数据
TableRowAppendRow (const BeString &text_row_data)
 末尾插入文本数据
TableRowGetRow (int pos) const
 获得表格行对象
TableRowFindRowPositionByUserData (LPCTSTR text_data) const
 根据行用户数据,得到行的位置
BOOL RemoveRows (int nRows, int count=1)
 删除表格行
BOOL RemoveSelectRows (BOOL is_refresh=TRUE)
 删除选中行
void Clear (BOOL is_erase=TRUE)
 清空所有行数据
void EnableRowHeightFillAdapt (BOOL is_fill)
 打开(或关闭)行高自适应
CNodeSpanCellGetCellItem (int idx_row, int idx_col) const
 获得单元格容器节点
CNodeDataGetCellNodeData (int idx_row, int idx_col, BOOL create=FALSE)
 获得单元格数据对象
void SetCellNumber (int idx_row, int idx_col, double value, int precision=3, bool remove_float_zero=true)
 设置单元格数值
void SetCellString (int idx_row, int idx_col, const BeString &str)
 设置单元格文本
double GetCellNumber (int idx_row, int idx_col)
 获得单元格数值
BeString GetCellString (int idx_row, int idx_col)
 获得单元格文本
void MoveColValueByCircle (int col, int dx)
void SetTransposition (bool is_transposition)
 设置行列转置
void SetItemRoundRadius (RoundRectRadius &radius)
 设置高亮背景圆角矩形尺寸
void SetItemRoundSize (int rx, int ry)
 设置高亮背景圆角矩形尺寸
void SetStartingOfSerialNumber (int begin)
void SetPageSize (unsigned size)
 设置分页尺寸
void SetPageCurSel (int sel)
 设置当前页
void EnableMultPage (bool is_open)
 设置分页功能可用性
BOOL IsSupportMultPage () const
 分页功能是否可用
int GetPageCounts () const
 分页数量
int HitTestCol (int x, int y)
 命中测试列序号
int RowCounts () const
 行总数
int VisableRowCount () const
 可见行总数
int GetRowsIndexWithName (LPCTSTR name) const
 通过名称id查找行,并返回行序号
void SetCurSel (int pos, int count, BOOL is_refresh=TRUE)
 设置当前选中行
int GetSelectRowIndex (int begin_row=0) const
 从row_begin开始检索,并返回第一个选中行索引
void ShowNumText (bool is_show)
 显示行号
void ShowMultiCheckBox (bool is_show)
 显示多选框
void CheckBox (int idx_row, SelectState state)
 设置行选择状态
void CheckBoxAll (bool is_check, BOOL is_erase=TRUE)
 设置所有行的选择框状态为bCheck
void SelectAll (bool is_select, BOOL is_erase=TRUE)
 设置所有行的选中状态为bSlted
void VisableAll (bool is_show, BOOL is_erase=TRUE)
 设置所有行的显示状态为bShow
void SetVisibleResultList (const std::vector< int > &rs)
 设定可现实行的索引列表
void ClearVisibleResultList ()
 恢复原状
BOOL JumpViewRow (int index, BOOL is_top)
 滚动到指定索引行
int GetRowHeight (BOOL display=TRUE) const
 数据行高度
void SetRowHeight (int h)
 设置行高度
BOOL IsInVisibleView (int pos) const
 是否在可视区域内
UINT GridLineStyle () const
 获得网格线风格PenType
void SetGridLineStyle (UINT style)
 设置网格线风格PenType
void ShowEditor (int idx_row, int idx_col, BOOL is_refresh=FALSE)
 显示单元格(nRow,idx_col)的内容编辑器
void HideEditor (int idx_col)
 隐藏内容编辑器
void PrintToFile (FILE *fp, LPCSTR space_prefix=" ")
 打印数据信息
void SaveDataToStringWithXml (XMLItem *node)
 保存表格数据到xml格式的node节点,该格式和ui文件中的数据初始化格式相同
void OnClickHeader (POINT pt)
 表头点击事件回调虚函数
void SortColumn ()
void DrawAllCheckBox (ISurface *surface, RECT *rect_update, const GColor &color)
BOOL DoPaintNumCtrl (ISurface *surface, RECT *rect_update)
void GetCheckedRows (BOOL is_checked, std::vector< TableRow * > &outlist) const
void GetSelectedRows (BOOL is_selected, std::vector< TableRow * > &outlist) const
void OnControlSize () override
 控件尺寸改变时触发
void OnChangeHeaderColWidth () override
void OnDbClickCell (int idx_row, int idx_col)
void OnInsertColumn (int idx_col, int sum) override
void OnDeleteColumn (int idx_col, int sum) override
void OnSortColum (int idx_col, OrderByType order_type, DataType sort_type, BOOL is_no_case) override
void OnPaintMovingColum (int idx_col, int dx, ISurface *surface, RECT *rect_update) override
void OnParseItemData (XMLItem *node) override
 解析xml文件对应的数据
void ShellAttribute (const BeString &str_name, const BeString &str_value) override
 命令控制和属性设置接口
void GetAttributeNames (std::vector< BeString > &out_vec) override
void GetRelationship (std::vector< BeString > &list) override
 获得类的继承关系
BOOL OnMessageHandler (UINT message, WPARAM wp, LPARAM lp) override
BOOL OnMouseMove (WPARAM wp, LPARAM lp) override
BOOL OnMouseLeave (WPARAM wp, LPARAM lp) override
BOOL OnLButtonDown (WPARAM wp, LPARAM lp) override
BOOL OnLButtonUp (WPARAM wp, LPARAM lp) override
BOOL OnLButtonCliked (WPARAM wp, LPARAM lp) override
BOOL OnKeyDown (WPARAM wp, LPARAM lp) override
 键盘消息
BOOL OnKeyUp (WPARAM wp, LPARAM lp) override
BOOL OnChar (WPARAM wp, LPARAM lp) override
BOOL DoPaint (ISurface *surface, RECT *rect_update) override
 绘制前景
CControlUIHitTestControl (POINT pt) override
 根据位置得到最终的定位控件
int LayoutAdaptWidth (int exp_height) override
 自适应宽度计算
int LayoutAdaptHeight (int exp_width) override
 自适应高度计算
void OnReLayout () override
Public 成员函数 继承自 BUI::CContainTitleUI
 CContainTitleUI ()
 ~CContainTitleUI ()
GColor GridLineColor () const
BOOL IsFixColum (int idx_col) const
int SetColumFilterList (const std::vector< int > &rs)
 设定可现实行的索引列表
void ClearColumFilterList ()
 恢复原状
PenType GetGridLineStyle () const
 获得网格线风格 PenType
void SetGridLineStyle (PenType pen_type)
 设置网格线风格 PenType
void SetMovingColor (GColor cr)
 设置移动列的背景色
void SetGridFillMode (GridFillMode fill_mode)
 设置网格填充风格,行填充,列填充,单元格填充. GridFillMode
void SetLeadWidth (int width)
 设置容器左侧边宽度
int GetLeadWidth (BOOL display=TRUE) const
 获得序号显示区域的前导宽度
int GetColumWidthSum () const
 获得标题栏的总宽度
int TitleHeight (BOOL display=TRUE) const
 标题高度
void SetTitleHeight (int h)
 设置标题高度
void SetFixColCount (int c)
 设置前缀固定行数量
UINT TextAlign (UINT idx_col) const
 获得列文本对齐方式
int GetColWidth (UINT idx_col) const
 获得列宽
UINT GetRowScrollBarTypeID () const
 获得行增长方向的滚动条类别。当表格行列转置时,用来分别滚动条行为
UINT GetColScrollBarTypeID () const
 获得列增长方向的滚动条类别。当表格行列转置时,用来分别滚动条行为
int GetColumPos (int col) const
 获得数据排序后的真实索引
TableHeaderNodeCellGetColumn (int idx_col) const
 获得标题栏单元格对象
void SwapTitleColum (int c1, int c2)
 交换列
void MoveColumPos (int col, int ins_col)
 移动列到ins_col位置
void SetTitleFont (GFont *font)
 设置标题栏字体
BOOL GetColumCellXBound (int col, int &x1, int &x2) const
 获得指定列的左右边界
int ColumnCount () const
 获得实际标题栏列总数
int VisableColumnCount () const
 获得可见标题栏列总数
void ClearColumn (BOOL is_erase=TRUE)
 清空所有列
void RemoveColum (UINT idx_col)
 删除指定列, nCol表示一级表头
int SetColumns (const std::vector< std::shared_ptr< TableHeaderNodeCell > > &title_list)
int InsertColumn (int idx_col, const std::shared_ptr< TableHeaderNodeCell > &title_cell)
int AppendColumn (const std::shared_ptr< TableHeaderNodeCell > &title_cell)
int FindColumnIndexByName (BeString &name) const
 根据名称id查询列号
int GetColumnIndexByName (LPCTSTR text_id) const
 根据名称获得索引
void SetColumnName (int idx_col, LPCTSTR text_id)
 设置列字符ID
void SetColWidth (UINT idx_col, LayoutValue value)
 设置列宽
void SetEditorUI (const std::shared_ptr< CControlUI > &editor)
 设置全局的输入编辑控件
void SetColumEditorUI (int idx_col, const std::shared_ptr< CControlUI > &editor)
 设置列编辑ui
BOOL JumpViewCol (int index, BOOL is_left)
 移动滚动条到指定列。
BOOL OnNcHitTest (POINT pt) override
Public 成员函数 继承自 BUI::CScrollAreaUI
 CScrollAreaUI ()
virtual ~CScrollAreaUI ()
void SetWheelSpeed (UINT speed)
 设置滑动速度
void SetBackIntervalColor (const std::vector< GColor > &color)
 设置背景网格间隔颜色表
void ResetScrollBarRange ()
 重置内置滚动条范围
void ScrollJumpToView (RECT &rc)
 让rc处于可见范围内
void ScrollJumpToControlUI (UINT bar_type, CControlUI *child)
 让child处于可见范围内
void RefreshClientRect (RECT rc)
 刷新矩形区域
void ScreenToClientPoint (POINT &pt) const
 屏幕坐标转换为客户坐标
void SetScrollBarUISize (int size)
 设置内置滚动条尺寸大小
void SetEmptyTipImage (GImageIconInfo *img)
 设置提示图标(内容为空时显示)
void SetEmptyTipText (const BeString &text)
 设置提示文本(内容为空时显示)
CScrollBarUIGetScrollbarUI (UINT bar_type=SBF_HORZ) const
 获得内置滚动条控件对象
int GetScrollbarPos (UINT bar_type=SBF_HORZ) const
 获得滚动条(bar_type)的位置
void SetScrollbarPos (UINT bar_type, int pos)
 设置滚动条(bar_type)的位置
void SetScrollbarRange (UINT bar_type, int pos_min, int pos_max)
 获得滚动条(bar_type)的范围
int GetScrollbarRange (UINT bar_type=SBF_HORZ) const
 获得滚动条(bar_type)的范围最大值
int GetScrollDistance (UINT bar_type=SBF_HORZ) const
 获得滚动条(bar_type)的距离=max-page.
int GetScrollbarPage (UINT bar_type=SBF_HORZ) const
 获得滚动条(bar_type)的页大小
void GetScrollViewRect (RECT *rc) const
BOOL IsScrollVaild (UINT bar_type=SBF_HORZ) const
 判断滚动条是否有效
void SetScrollbarPosWithPercentage (UINT bar_type, int percent)
 根据百分比设置滚动条的位置
int GetScrollbarPercentage (UINT bar_type=SBF_HORZ) const
 获得百分比位置
void SetScrollbarPosEnd (UINT bar_type=SBF_HORZ)
 设置滚动条位置到最后
void EnableScrollBarAutoHide (BOOL enable)
 开启(或禁用)内置滚动条在失去焦点时,自动隐藏。默认禁用状态
void ForbidScrollBar (UINT bar_type, BOOL is_forbid)
 强制禁用(或开启)滚动条。默认开启状态
void SetScrollbarAlign (UINT bar_type, AlignType align_type)
 设置内置滚动条的对齐方式
void UpdateScrollBarPostion (RECT *rc)
 根据对齐方式在指定矩形区域内,重新计算内置滚动条的显示坐标
void DoPaintEmptyTips (ISurface *surface, RECT &rc_paint, RECT *rect_update)
 绘制空内容时的提示信息
void OnCreate () override
void GetLayoutViewRect (RECT *rc) override
BOOL OnMouseWheel (WPARAM wp, LPARAM lp) override
 鼠标滑轮消息
BOOL OnMouseEnter (WPARAM wp, LPARAM lp) override
 在鼠标进入控件时触发
BOOL OnHSCrollBar (WPARAM wp, LPARAM lp) override
BOOL OnVSCrollBar (WPARAM wp, LPARAM lp) override
void CloneAttribute (CControlUI *clone) override
 克隆属性
Public 成员函数 继承自 BUI::CControlUI
 CControlUI ()
virtual ~CControlUI ()
BOOL Create (IManageHandler *manager, LPCTSTR name, LPCTSTR text, DWORD style, RECT rc, CControlUI *parent=NULL, UINT id=0)
 创建虚拟控件:创建过程中,会将控件加入到全局的垃圾管理机制中。用于在程序退出时,释放内存
BOOL Create (IManageHandler *manager, LPCTSTR name, LPCTSTR text, DWORD style, int x, int y, int cx, int cy, CControlUI *parent=NULL, UINT num_id=0)
void InsertChild (CControlUI *current, CControlUI *prev)
 插入子控件
BOOL RemoveChild (CControlUI *child)
 删除子控件
IManageHandlerGetManagerUI () const
 返回管理器对象
BOOL SendParentMessage (UINT message, WPARAM wp, LPARAM lp) const
BOOL SendToManager (UINT message, WPARAM wp=0, LPARAM lp=0)
void SendToAllChilds (UINT message, WPARAM wp, LPARAM lp)
 将消息传递给每一个子控件响应
void SetEventHandler (IEventHandler *hander)
 设置事件处理对象
IEventHandlerEventHandler () const
 获得事件处理对象
void SetParent (CControlUI *parent)
 设置父控件
CControlUIParent () const
 父控件
CControlUIFirstChild () const
 第一个孩子节点
CControlUILastChild () const
 最后的孩子节点
CControlUINextSibling () const
 下一个兄弟节点
CControlUIPrevSibling () const
 上一个兄弟节点
void AddAnimate (const BeString &id, std::shared_ptr< GAnimateProperty > animate)
 添加动画
void PauseAnimate (BOOL is_pause)
 动画使能:暂停(TRUE)或开启(FALSE)
GAnimateTransformVectorAnimateTransform ()
 获得动画数组
void ModifyControlFlags (uint64_t style, UINT op=ADD_FLAGS)
 设置控件风格
uint64_t IsHasControlFlags (uint64_t flags) const
uint64_t GetControlFlags () const
POINT GetViewPoint (float xp, float yp, BOOL is_client=FALSE) const
 获得控件内的绝对位置坐标
RECT GetViewParentRect (float cx, float cy, float w, float h) const
 获得父控件内的位置坐标
POINT GetParentViewPoint (float xp, float yp, BOOL is_client=FALSE) const
 获得父控件内的绝对位置坐标
void SetControlNotes (const BeString &str)
 设置控件注释信息
BeString GetControlNotes () const
 获得控件的注释信息
LPCTSTR Text () const
 获得文本
void SetControlText (BeString str, BOOL is_refresh=FALSE)
 设置文本
void SetAdaptMinText (const BeString &str)
 布局最小适应文本
void SetControlTextByNumber (double value, int precision, BOOL remoe_last_zero)
 以数值设置文本
double GetControlTextNumber () const
 获得文本表示的数值
void SetVarName (const BeString &str)
 设置控件唯一标识符
void SetVarNameA (const char *var_name)
 设置控件唯一标识符
void SetVarNameW (const WCHAR *varname)
 设置控件唯一标识符
void SetCommitTarget (ICommitTarget *obj)
 设置数据提交对象
void AddAbsordLayout (std::shared_ptr< ILayout > layout)
 添加悬浮布局
void DelAbsordLayout (std::shared_ptr< ILayout > layout)
 删除悬浮布局
void SetBlurSize (UINT size)
 设置高斯模糊尺寸
UINT BlurSize () const
 返回高斯模糊尺寸
GBrushArray GetControlColorsStyle (ColorSceneType type)
 获取颜色外观
void SetControlColorsStyle (ColorSceneType type, GBrushArray colors)
 设置颜色外观
void SetShadowText (int dx, int dy, int blur_x, int blur_y, const GColor &color)
 设置文本阴影
void SetRoundRadiusValues (const CNumberValue radius[8])
 设置矩形圆角
void GetRoundRadius (RoundRectRadius &ra) const
void GetRoundRadiusWithRect (const RECT &rc, RoundRectRadius &ra) const
GShadowContainGetShadowContain ()
 获得阴影容器对象
GFontGetFont () const
 获得字体
void SetFont (GFont *font)
 设置字体
void SetFontSize (int height)
 设置字体大小
void SetStrokeSize (UINT size)
 设置轮廓线宽
void SetPositionX (int x)
 设置控件x坐标
void SetPositionY (int y)
 设置控件y坐标
void SetPositionXY (int x, int y)
 设置控件(x,y)坐标
int Width () const
 获得控件宽度
void SetWidth (int w)
 设置控件宽度
int Height () const
 获得控件高度
void SetHeight (int h)
 设置控件高度
int SaveAsImage (LPCTSTR out_png)
 保存控件图像为png
int SaveAsLongImage (LPCTSTR out_png)
 保存为长图
void BindAction (const std::shared_ptr< IActionNotify > &notify)
 绑定事件
void ClearAction ()
 清空事件
void TriggerAction ()
 触发事件
ActionTableGetActionTable ()
 获得鼠标事件映射表
void TriggerScript ()
 执行脚本事件
ActionKeyboardMapGetActionKeyboard (BOOL is_create=TRUE)
 获得键盘事件表
void SetCaptureCtl ()
 捕获鼠标
void ReleaseCaptureCtl ()
 释放焦点捕获
void ChangeUIToNodeLink ()
 将控件控制权,交给Node节点控制
void SetClipZoom (int x, int y, int w, int h)
 设置控件可视裁剪区域。约束控件的显示区域
BOOL BringBottomMost ()
 将控件移动到所有兄弟控件中的第一个
BOOL BringTopMost ()
 将控件移动到所有兄弟控件中的最后一个
BOOL TestOrder () const
 判断是否被其他控件遮盖 TRUE 代表遮盖
void TipTrack (int x, int y, LPCTSTR text=NULL)
 提示框显示位置 x, y 是相对窗口
void TipHide ()
 隐藏提示框
void ShowControl (bool is_show, bool notify_layout=true)
 显示虚拟窗口
void SetVisibleWhenMouseHover (BOOL open)
 设置只在鼠标悬停时,显示控件
BOOL IsVisible () const
 控件在父控件中的显示状态
BOOL IsFocused () const
 焦点状态
void EnableControl (bool is_enable, bool is_refresh=true)
 TRUE:启用控件. FALSE:禁用控件
void EnableNodeFlagControl (bool is_enable, bool is_refresh=true)
 nodedata包含的控件。表示node是否被禁用
BOOL IsEnabled () const
 判断是否可用。TRUE:代表可用
BOOL IsBkShowTiming () const
void SetBkShowTiming (ShowModel mode)
 背景绘制时机
void SetBorderShowTiming (ShowModel mode)
 边框绘制时机
BOOL IsCreateSucceed () const
 判断是否是有效控件
BOOL IsShortCutVaild ()
 判断是否存在快捷键
void EnableShortCut (bool is_enable)
 开启(或禁用)快捷键
void SetShortCut (int virtual_key)
void SetShortCutCtrlCode (UBYTE virtual_key)
BOOL DoShortCut (UBYTE ctrl, UBYTE virtual_key)
void EnableBorderAdjustFlag (UINT align_border=ALIGN_LEFT, bool is_enable=true)
 设置边框调整使能
void SetToolTipText (LPCTSTR tip_text)
 设置提示文本
void SetToolTipText (const BeString &tip_str)
 设置提示文本
void SetPopTipUI (const std::shared_ptr< PopControlInfo > &pop_info)
 设置弹出pop显示ui
void AutoAdaptSize ()
 自动计算自适应大小
void PopupPosition (int x, int y, int dx, int dy, UINT align)
void PopTipUI (BOOL is_show)
 展示pop状态
BOOL HitTestPopUI (POINT pt)
 是否命中弹出控件
void GetRectInScreen (LPRECT rc)
 获得在HWND中的绝对位置
void SetControlMouseCursor (CursorMouse id)
 设置控件的鼠标光标
void SetFocus ()
 取得焦点 和HWND焦点不要混淆 ,这是不一样的东西,只是函数名称我为了好记住
void Scroll (int x, int y)
 视区的坐标原点偏移
void Refresh (BOOL is_sync=FALSE)
 窗口失效重绘
void RefreshThreadSafe ()
 在gui线程之外时调安全的刷新函数
void RefreshRect (RECT *rc_update)
 窗口失效重绘
void GetDragPos (RECT *rc) const
 窗口拖拽的原始位置
void OnDestory ()
 控件销毁
void UpdateAdaptLayout () const
 更新adapt布局
BOOL MoveControl (RECT rect, BOOL is_refresh=TRUE)
 移动控件到目标矩形区域
BOOL MoveControl (int x, int y, int w, int h, BOOL is_refresh=TRUE)
 移动控件位置。(x,y)代表父控件坐标空间值
void MoveDragControl (int dx, int dy, BOOL is_refresh=TRUE)
 拖拽移动。(dx,dy)移动距离向量
void MoveCenterByPercent (RECT *rc_view, float scale_x=0.5, float scale_y=0.5, int w=0, int h=0, BOOL adapt_dpi=FALSE, BOOL is_refresh=TRUE)
 将控件移动到以(scale_x, scale_y)百分比的中心点
void MoveControlAnimate (RECT rc_start, RECT rc_end, BOOL is_show, int animate_duration=300)
 以动画模式移动
void PopupAtMousePosition (int dx, int dy, int w, int h, BOOL adapt_dpi=FALSE, BOOL is_refresh=TRUE)
 在鼠标位置出弹出控件
void ResetLayoutChilds (UINT flags=0)
 重置子布局
void SetSkinModule (const BeString &skin_group)
 设置皮肤id
void SetSkinStyle (const BeString &skin_name)
 设置皮肤id
void SetDrawStyleWithFourCode (LPCTSTR draw_style)
 设置控件绘制的风格样式,同一种控件的表现样式可以有多种。 输入值只有前四位字符有效。一个控件表现形式在实际中不会很多。不用整形的目的是增强可读性
BOOL IsDrawStyleWithFourCode (TCHAR a='\0', TCHAR b='\0', TCHAR c='\0', TCHAR d='\0') const
 判断是否匹配四字符数
void GetSkinModule (BeStringShort64 &module_name)
void GetSkinStyle (BeStringShort64 &style_name)
RECT GetMarginAreaRect (BOOL contain_shadow=FALSE) const
 获得外边距下的相对于窗口的矩形区域
RECT GetControlRect () const
 获得控件在窗口坐标下的矩形区域
RECT GetControlClientRect () const
 返回基于客户区的坐标
RECT GetControlScreenRect () const
 返回基于屏幕的坐标
RECT GetOppositePosition (RECT rc_contain, RECT rc_child, BOOL is_intersect=TRUE) const
 返回rc_child相对rc_contain坐标系的位置
SIZE GetStringSize (LPCTSTR str) const
 获得字符串尺寸
ILayoutGetAttchLayout () const
 获得管理控件自身的布局对象
ShowStatus GetPaintStatus (bool ignore_left_button=true) const
 获得控件状态
POINT GetClientPoint (double percent_width, double percent_height)
 获得控件坐标系下百分比的绝对位置
CControlUIFindTabFocusControl (BOOL is_next) const
 获得接下来的焦点控件
void NotifyMangerIsDestory ()
 告知管理者已销毁
ST_PolicyGetSignalPolicy ()
 信号和槽机制的回收器
BOOL TranslateSyncMsg (UINT message, WPARAM wp, LPARAM lp)
 向上层转发同步消息
int FindChildControlByHandler (std::vector< CControlUI * > &vec, IEventHandler *handler)
 查找(通过控件的SetEventHandler()指定的事件处理对象来寻找)
int FindAllControlByName (std::vector< CControlUI * > &vec, LPCTSTR str_name, BOOL is_recursion=TRUE) const
 在当前控件之下查找所有同名控件
int FindAllControl (std::vector< CControlUI * > &vec, BOOL is_recursion=TRUE) const
 获得所有子控件
CControlUIFindControlByName (LPCTSTR str_name, BOOL is_recursion=TRUE) const
 在当前控件之下查找控件
CControlUIGetParent () const
 获得父窗口
CControlUIGetParentOnTopMost () const
 获得最顶层父窗口
CControlUIHitTestChildControl (POINT pt, BOOL is_recursive=TRUE) const
 定位到子控件对象
CControlUINextFocusControl (BOOL is_prev=FALSE) const
 下一个焦点控件
void SaveSettingConfig ()
 保存配置
BOOL OnPaintControl (ISurface *surface, LPRECT rc_update=NULL, LPRECT rc_parent_view=NULL)
 控件渲染
float BackOpacity () const
 背景透明度
float BorderOpacity () const
 轮廓边框透明度
virtual POINT ViewOrigin () const
 坐标原点偏移量
virtual BOOL HitTest (POINT pt)
 点击测试
virtual BeString GetControlText ()
virtual void GetControlValueText (BasicStringBuffer &buffer)
 获得控件所表达的数据的文本,比如复选框的状态("0"/"1"),方便上层统一操作
virtual void SetControlValueText (const BeString &str)
 设置控件所表达的数据的文本,比如复选框的状态("0"/"1"),方便上层统一操作
virtual ILayoutBoxLayoutMgr ()
 容器布局对象
virtual void Activate ()
 激活
virtual CControlUIClone ()
 克隆对象
virtual void ChangeThemeColors ()
 切换主题色
BOOL ShellAttributeToChildControl (const BeString &child_name, const BeString &str_name, const BeString &str_value)
virtual void OnParseAnimate (XMLItem *node)
 解析控件动画对象
virtual void OnSaveConfigSetting (XMLItem *node)
 保存控件属性到全局配置文件
virtual void OnLoadConfigSetting (XMLItem *node)
 加载控件属性
virtual void OnFontChange ()
 字体更改
virtual void OnShow (bool is_show)
 控件可见性发生变化时触发
virtual void OnCtrlKillFocus ()
 ui控件失去焦点
virtual void OnCtrlSetFocus ()
 ui控件获得焦点
virtual BOOL OnKillFocus (WPARAM wp, LPARAM lp)
 当管理的句柄HWND失去焦点时 进入此函数,也就是此函数实际上是窗口 MSG_WND_KILLFOCUS的响应
virtual BOOL OnSetCursor (WPARAM wp, LPARAM lp)
virtual BOOL OnRButtonDown (WPARAM wp, LPARAM lp)
virtual BOOL OnRButtonUp (WPARAM wp, LPARAM lp)
virtual BOOL OnRButtonCliked (WPARAM wp, LPARAM lp)
virtual BOOL OnTimerEvent (unsigned int timer_id, UINT msec)
 定时器事件响应
virtual BOOL DoPaintShadow (ISurface *surface, bool is_inset, RECT *rect_update)
virtual BOOL OnPaintControl3D (ISurface *surface, LPRECT rc_update)
virtual BOOL DoPaintBackGround (ISurface *surface, RECT *rect_update)
 绘制背景
virtual BOOL DoPaintBorder (ISurface *surface, RECT *rect_update)
 绘制边框
virtual BOOL DoPaintFinished (ISurface *surface, RECT *rect_update)
 绘制结束事件,极少场景需要用到
virtual BOOL DoPaintGL (ISurface *surface, RECT *rect_update)
 绘制GL
virtual BOOL OnDropBegin ()
 鼠标拖拽开始
virtual BOOL OnDropEnd ()
 鼠标拖拽结束
int GetSplitControlOffsetW () override
 获得拆分宽度偏移
int GetSplitControlOffsetH () override
 获得拆分高度偏移
void Layout (int x, int y, int w, int h, UINT flags) override
bool IsVisibleLayout () override
 布局可见性判断
RECT GetPosition () override
 获得布局矩形区域位置
void SetLauoutInfo (ILayout *parent, int w, int h, LayoutMode mw, LayoutMode mh)
void ChangeManager (IManageHandler *manager)
 改变控件的管理对象(将抽象控件改变实际窗口的作用域)。
void DoChangeThemeColors (const BeString &name)
 主题应用
Public 成员函数 继承自 BUI::ICommitTarget
 ICommitTarget ()
virtual ~ICommitTarget ()
virtual void OnSummitTarget (FourCode four_code, LPCTSTR data)
 对象之间传递数据的提交操作
Public 成员函数 继承自 BUI::IControlUI
 IControlUI ()
virtual ~IControlUI ()
Public 成员函数 继承自 BUI::IEventHandler
 IEventHandler ()
virtual ~IEventHandler ()
Public 成员函数 继承自 BUI::CSortContainer
 CSortContainer ()
 ~CSortContainer ()
void AppendSortData (SortData &data)
void DeleteSortData (int sort_i)
void ClearSortData ()
const SortDataAt (UINT i) const
void SetOrderType (OrderByType order)
void SetSortType (DataType dtype, BOOL is_no_case=FALSE)
void SetPauseStatus (BOOL is_pause)
DataType GetSortDataType () const
void DoSort ()

额外继承的成员函数

静态 Public 成员函数 继承自 BUI::CControlUI
static void ChangeParent (CControlUI *obj_this, CControlUI *parent, CControlUI *prev)
static void ParseShortCutText (const char *text, UINT &virtual_ctrl, UINT &virtual_key)
 解析快捷键
static BeString ConvertShortCutCodeToText (UINT virtual_ctrl, UINT virtual_key)
 快捷键转换为字符串
Public 属性 继承自 BUI::CControlUI
BeString m_name
UINT m_int_id
IManageHandlerm_manager
CControlUIm_parent
CControlUIm_first_child
CControlUIm_last_child
CControlUIm_next_sibling
CControlUIm_prev_sibling
LinkControl m_link_gc
LinkControl m_link_for_cell
LinkActionNode m_link_moving
LinkPtr m_link_anim
LinkPtr m_link_pop_ui
RECT m_rect_pos
UINT m_blur_size
UBYTE m_visible
 全部为0代表可见 bit0: 表示控件自身的可视状态 bit1: 表示父控件的可视状态 bit2: 表示鼠标进入时才有可视状态
UBYTE m_enable
 全部为0代表可用 bit0 表示控件自身的可用状态 bit1 表示父控件的禁用状态 bit2: nodecell禁用状态
UBYTE m_bk_show_timing
 ShowModel OnNever 从不绘制 OnAlways 一直绘制 OnHighLight 高亮时绘制
UBYTE m_border_show_timing
Protected 成员函数 继承自 BUI::CContainTitleUI
void GetColumnAreaRect (int col, RECT *rc)
int PtInColumn (int x, int y)
int PtInTargetColumn (int x, int y)
int GetFixColumWidth () const
BOOL PtInTitle (POINT pt) const
TableHeaderNodeCellGetAbsColumn (int idx_col) const
BOOL MoveCol (BOOL is_prev, BOOL is_refresh)
Protected 成员函数 继承自 BUI::CScrollAreaUI
void ShowChildScrollBar (BOOL show)
UINT GetScrollStateCode () const
Protected 成员函数 继承自 BUI::CControlUI
void UpdateMarginStateFlag ()
 更新margin状态标志位
BOOL SetMouseCursor (CursorMouse id)
 设置系统光标
void ClientToHWNDScreen ()
 将控件坐标转换为窗口下的坐标
void RePlotChildPos ()
void AdjustLayoutControlSize (POINT pt)
 用户调整控件大小
void NotifyChildControlEnableChange (bool is_enable)
 父控件被禁用时,同步更新子控件禁用状态
void NotifyChildControlVisableChange (bool is_show)
 父控件被隐藏时,同步更新子控件隐藏状态
Protected 成员函数 继承自 BUI::CSortContainer
void NeedReSort ()
静态 Protected 成员函数 继承自 BUI::CControlUI
static UBYTE ReturnBitFlag (UBYTE value, UINT bit_pos, BOOL is_enable)
Protected 属性 继承自 BUI::CContainTitleUI
std::vector< std::shared_ptr< TableHeaderNodeCell > > m_vec_heads
std::vector< int > m_vec_filter_rs
std::shared_ptr< CControlUIm_def_editor_ui
GBrushArray m_bru_fill_title
GBrushArray m_bru_text_title
GBrushArray m_bru_stroke_grid
GBrushArray m_bru_fill_num
GBrushArray m_bru_text_num
GBrushArray m_bru_fill_move
PenType m_gridline_style
GridFillMode m_grid_fill_mode
GFontm_font_title
int m_track_size
int m_track_pos
int m_track_col
int m_highlight_col
int m_last_select_col
TableHeaderNodeCellm_drag_col_cell
TableHeaderNodeCellm_sort_cell
UINT m_title_hit
int m_lead_size
int m_title_height
int m_fix_colum_count
int m_move_source_col
int m_move_target_col
bool m_is_change_width
bool m_is_transposition
UINT m_scroll_col
UINT m_scroll_row
Protected 属性 继承自 BUI::CScrollAreaUI
int m_wheel_speed
int m_bar_size
CScrollBarUIm_scroll_hor
CScrollBarUIm_scroll_ver
AlignType m_hor_bar_align
AlignType m_ver_bar_align
BOOL m_is_forbid_hor
BOOL m_is_forbid_ver
BOOL m_is_display_bar_when_mouse_enters
CNodeDataLists m_nodelist_when_empty
std::vector< GColorm_back_interval_colors
Protected 属性 继承自 BUI::CControlUI
IEventHandlerm_event_handler
ICommitTargetm_commit_target
BeString m_text
BeString m_name_skin_module
BeString m_name_skin_style
BeString m_capture_save_file
BeString m_text_notes
BeStringA m_script_code
BeStringA m_script_val
Location m_locationinfo
POINT m_point_origin
uint64_t m_flags_ctrl
RECT m_rect_begin_track
RECT m_rect_clip
GFontm_font
CursorMouse m_cursor
UINT m_border_size
ActionList m_action
ActionTable m_action_map
ActionKeyboardMapm_kb_event
ILayoutm_layout
BeString m_text_min_adapter
CNumberValuem_round_radius
CNumberValuem_margin_on_hover
GBrushArray m_bru_fill
GBrushArray m_bru_stroke
GBrushArray m_bru_text
GShadowContain m_shadow_contain
ShadowInfom_shadow_text
ST_Policy m_sig_policy
syntax_infom_cmd_ast
BeString m_text_poptips
std::shared_ptr< PopControlInfom_pop_ui_info
std::vector< std::shared_ptr< ILayout > > m_absord_uis
std::map< BeString, std::shared_ptr< GAnimateProperty > > m_anim_all
std::shared_ptr< GAnimatePropertyValue< float > > m_anima_fill_opacity
std::shared_ptr< GAnimatePropertyValue< float > > m_anima_stroke_opacity
std::shared_ptr< GAnimatePropertyValue< float > > m_anima_moving
GAnimateTransformVector m_anim_trans
FourCode m_draw_style
UBYTE m_hit_flag
UBYTE m_key_down
Protected 属性 继承自 BUI::CSortContainer
BOOL m_is_pause_sort
BOOL m_is_need_rerost
OrderByType m_order_type
DataType m_sort_type
BOOL m_is_no_case
std::vector< SortDatam_sort_data

详细描述

表格控件

构造及析构函数说明

◆ CTableViewUI()

BUI::CTableViewUI::CTableViewUI ( )

◆ ~CTableViewUI()

BUI::CTableViewUI::~CTableViewUI ( )

成员函数说明

◆ AppendRow() [1/2]

TableRow * BUI::CTableViewUI::AppendRow ( const BeString & text_row_data)

末尾插入文本数据

◆ AppendRow() [2/2]

TableRow * BUI::CTableViewUI::AppendRow ( LPCTSTR text_row_data = NULL)

末尾插入文本数据

◆ CheckBox()

void BUI::CTableViewUI::CheckBox ( int idx_row,
SelectState state )

设置行选择状态

◆ CheckBoxAll()

void BUI::CTableViewUI::CheckBoxAll ( bool is_check,
BOOL is_erase = TRUE )

设置所有行的选择框状态为bCheck

◆ Clear()

void BUI::CTableViewUI::Clear ( BOOL is_erase = TRUE)

清空所有行数据

◆ ClearVisibleResultList()

void BUI::CTableViewUI::ClearVisibleResultList ( )

恢复原状

◆ DoPaint()

BOOL BUI::CTableViewUI::DoPaint ( ISurface * surface,
RECT * rect_update )
overridevirtual

绘制前景

重载 BUI::CContainTitleUI .

◆ DoPaintNumCtrl()

BOOL BUI::CTableViewUI::DoPaintNumCtrl ( ISurface * surface,
RECT * rect_update )

◆ DrawAllCheckBox()

void BUI::CTableViewUI::DrawAllCheckBox ( ISurface * surface,
RECT * rect_update,
const GColor & color )

◆ EnableMultPage()

void BUI::CTableViewUI::EnableMultPage ( bool is_open)

设置分页功能可用性

◆ EnableRowHeightFillAdapt()

void BUI::CTableViewUI::EnableRowHeightFillAdapt ( BOOL is_fill)

打开(或关闭)行高自适应

◆ FindRowPositionByUserData()

TableRow * BUI::CTableViewUI::FindRowPositionByUserData ( LPCTSTR text_data) const

根据行用户数据,得到行的位置

◆ GetAttributeNames()

void BUI::CTableViewUI::GetAttributeNames ( std::vector< BeString > & out_vec)
overridevirtual

◆ GetCellItem()

CNodeSpanCell * BUI::CTableViewUI::GetCellItem ( int idx_row,
int idx_col ) const

获得单元格容器节点

◆ GetCellNodeData()

CNodeData * BUI::CTableViewUI::GetCellNodeData ( int idx_row,
int idx_col,
BOOL create = FALSE )

获得单元格数据对象

◆ GetCellNumber()

double BUI::CTableViewUI::GetCellNumber ( int idx_row,
int idx_col )

获得单元格数值

◆ GetCellString()

BeString BUI::CTableViewUI::GetCellString ( int idx_row,
int idx_col )

获得单元格文本

◆ GetCheckedRows()

void BUI::CTableViewUI::GetCheckedRows ( BOOL is_checked,
std::vector< TableRow * > & outlist ) const

◆ GetPageCounts()

int BUI::CTableViewUI::GetPageCounts ( ) const

分页数量

◆ GetRelationship()

void BUI::CTableViewUI::GetRelationship ( std::vector< BeString > & list)
overridevirtual

获得类的继承关系

重载 BUI::CContainTitleUI .

◆ GetRow()

TableRow * BUI::CTableViewUI::GetRow ( int pos) const

获得表格行对象

◆ GetRowHeight()

int BUI::CTableViewUI::GetRowHeight ( BOOL display = TRUE) const

数据行高度

◆ GetRowsIndexWithName()

int BUI::CTableViewUI::GetRowsIndexWithName ( LPCTSTR name) const

通过名称id查找行,并返回行序号

◆ GetSelectedRows()

void BUI::CTableViewUI::GetSelectedRows ( BOOL is_selected,
std::vector< TableRow * > & outlist ) const

◆ GetSelectRowIndex()

int BUI::CTableViewUI::GetSelectRowIndex ( int begin_row = 0) const

从row_begin开始检索,并返回第一个选中行索引

◆ GridLineStyle()

UINT BUI::CTableViewUI::GridLineStyle ( ) const

获得网格线风格PenType

◆ HideEditor()

void BUI::CTableViewUI::HideEditor ( int idx_col)

隐藏内容编辑器

◆ HitTestCol()

int BUI::CTableViewUI::HitTestCol ( int x,
int y )

命中测试列序号

◆ HitTestControl()

CControlUI * BUI::CTableViewUI::HitTestControl ( POINT pt)
overridevirtual

根据位置得到最终的定位控件

重载 BUI::CContainTitleUI .

◆ InsertRow() [1/2]

TableRow * BUI::CTableViewUI::InsertRow ( int pos,
const BeString & text_row_data )

同上

◆ InsertRow() [2/2]

TableRow * BUI::CTableViewUI::InsertRow ( int pos,
LPCTSTR text_row_data = NULL )

插入文本数据

参数
pos: 行序号
text_row_data: 文本数据
返回
TableRow* : 返回表格行对象。失败,返回空指针

◆ IsInVisibleView()

BOOL BUI::CTableViewUI::IsInVisibleView ( int pos) const

是否在可视区域内

◆ IsSupportMultPage()

BOOL BUI::CTableViewUI::IsSupportMultPage ( ) const

分页功能是否可用

◆ JumpViewRow()

BOOL BUI::CTableViewUI::JumpViewRow ( int index,
BOOL is_top )

滚动到指定索引行

◆ LayoutAdaptHeight()

int BUI::CTableViewUI::LayoutAdaptHeight ( int exp_width)
overridevirtual

自适应高度计算

重载 BUI::CControlUI .

◆ LayoutAdaptWidth()

int BUI::CTableViewUI::LayoutAdaptWidth ( int exp_height)
overridevirtual

自适应宽度计算

重载 BUI::CContainTitleUI .

◆ MoveColValueByCircle()

void BUI::CTableViewUI::MoveColValueByCircle ( int col,
int dx )

◆ OnChangeHeaderColWidth()

void BUI::CTableViewUI::OnChangeHeaderColWidth ( )
overridevirtual

◆ OnChar()

BOOL BUI::CTableViewUI::OnChar ( WPARAM wp,
LPARAM lp )
overridevirtual

重载 BUI::CControlUI .

◆ OnClickHeader()

void BUI::CTableViewUI::OnClickHeader ( POINT pt)

表头点击事件回调虚函数

◆ OnControlSize()

void BUI::CTableViewUI::OnControlSize ( )
overridevirtual

控件尺寸改变时触发

重载 BUI::CContainTitleUI .

◆ OnDbClickCell()

void BUI::CTableViewUI::OnDbClickCell ( int idx_row,
int idx_col )

◆ OnDeleteColumn()

void BUI::CTableViewUI::OnDeleteColumn ( int idx_col,
int sum )
overridevirtual

◆ OnInsertColumn()

void BUI::CTableViewUI::OnInsertColumn ( int idx_col,
int sum )
overridevirtual

◆ OnKeyDown()

BOOL BUI::CTableViewUI::OnKeyDown ( WPARAM wp,
LPARAM lp )
overridevirtual

键盘消息

重载 BUI::CControlUI .

◆ OnKeyUp()

BOOL BUI::CTableViewUI::OnKeyUp ( WPARAM wp,
LPARAM lp )
overridevirtual

重载 BUI::CControlUI .

◆ OnLButtonCliked()

BOOL BUI::CTableViewUI::OnLButtonCliked ( WPARAM wp,
LPARAM lp )
overridevirtual

◆ OnLButtonDown()

BOOL BUI::CTableViewUI::OnLButtonDown ( WPARAM wp,
LPARAM lp )
overridevirtual

◆ OnLButtonUp()

BOOL BUI::CTableViewUI::OnLButtonUp ( WPARAM wp,
LPARAM lp )
overridevirtual

◆ OnMessageHandler()

BOOL BUI::CTableViewUI::OnMessageHandler ( UINT message,
WPARAM wp,
LPARAM lp )
overridevirtual

◆ OnMouseLeave()

BOOL BUI::CTableViewUI::OnMouseLeave ( WPARAM wp,
LPARAM lp )
overridevirtual

◆ OnMouseMove()

BOOL BUI::CTableViewUI::OnMouseMove ( WPARAM wp,
LPARAM lp )
overridevirtual

◆ OnPaintMovingColum()

void BUI::CTableViewUI::OnPaintMovingColum ( int idx_col,
int dx,
ISurface * surface,
RECT * rect_update )
overridevirtual

◆ OnParseItemData()

void BUI::CTableViewUI::OnParseItemData ( XMLItem * node)
overridevirtual

解析xml文件对应的数据

重载 BUI::CContainTitleUI .

◆ OnReLayout()

void BUI::CTableViewUI::OnReLayout ( )
overridevirtual

◆ OnSortColum()

void BUI::CTableViewUI::OnSortColum ( int idx_col,
OrderByType order_type,
DataType sort_type,
BOOL is_no_case )
overridevirtual

◆ PrintToFile()

void BUI::CTableViewUI::PrintToFile ( FILE * fp,
LPCSTR space_prefix = " " )

打印数据信息

◆ RemoveRows()

BOOL BUI::CTableViewUI::RemoveRows ( int nRows,
int count = 1 )

删除表格行

参数
nRows开始行序号
count数量

◆ RemoveSelectRows()

BOOL BUI::CTableViewUI::RemoveSelectRows ( BOOL is_refresh = TRUE)

删除选中行

◆ RowCounts()

int BUI::CTableViewUI::RowCounts ( ) const

行总数

◆ SaveDataToStringWithXml()

void BUI::CTableViewUI::SaveDataToStringWithXml ( XMLItem * node)

保存表格数据到xml格式的node节点,该格式和ui文件中的数据初始化格式相同

◆ SelectAll()

void BUI::CTableViewUI::SelectAll ( bool is_select,
BOOL is_erase = TRUE )

设置所有行的选中状态为bSlted

◆ SetCellNumber()

void BUI::CTableViewUI::SetCellNumber ( int idx_row,
int idx_col,
double value,
int precision = 3,
bool remove_float_zero = true )

设置单元格数值

◆ SetCellString()

void BUI::CTableViewUI::SetCellString ( int idx_row,
int idx_col,
const BeString & str )

设置单元格文本

◆ SetCurSel()

void BUI::CTableViewUI::SetCurSel ( int pos,
int count,
BOOL is_refresh = TRUE )

设置当前选中行

◆ SetGridLineStyle()

void BUI::CTableViewUI::SetGridLineStyle ( UINT style)

设置网格线风格PenType

◆ SetItemRoundRadius()

void BUI::CTableViewUI::SetItemRoundRadius ( RoundRectRadius & radius)

设置高亮背景圆角矩形尺寸

◆ SetItemRoundSize()

void BUI::CTableViewUI::SetItemRoundSize ( int rx,
int ry )

设置高亮背景圆角矩形尺寸

◆ SetPageCurSel()

void BUI::CTableViewUI::SetPageCurSel ( int sel)

设置当前页

◆ SetPageSize()

void BUI::CTableViewUI::SetPageSize ( unsigned size)

设置分页尺寸

◆ SetRowHeight()

void BUI::CTableViewUI::SetRowHeight ( int h)

设置行高度

◆ SetStartingOfSerialNumber()

void BUI::CTableViewUI::SetStartingOfSerialNumber ( int begin)

◆ SetTransposition()

void BUI::CTableViewUI::SetTransposition ( bool is_transposition)

设置行列转置

◆ SetVisibleResultList()

void BUI::CTableViewUI::SetVisibleResultList ( const std::vector< int > & rs)

设定可现实行的索引列表

◆ ShellAttribute()

void BUI::CTableViewUI::ShellAttribute ( const BeString & str_name,
const BeString & str_value )
overridevirtual

命令控制和属性设置接口

szName属性 szText语法格式
limit-rows
可加载的最大行数,用于调试大文件
row_height
行高
row_height="25"
clear-row
清空数据
clear-row=""
line-type-level
层级画笔风格
solid, dot, dash, dash-dot, dash-dot-dot
cursel
设置当前选中项
cursel="行号"
start-num
序号文本的开始编号
start-num="5" 代表首行会显示为5

重载 BUI::CContainTitleUI .

◆ ShowEditor()

void BUI::CTableViewUI::ShowEditor ( int idx_row,
int idx_col,
BOOL is_refresh = FALSE )

显示单元格(nRow,idx_col)的内容编辑器

◆ ShowMultiCheckBox()

void BUI::CTableViewUI::ShowMultiCheckBox ( bool is_show)

显示多选框

◆ ShowNumText()

void BUI::CTableViewUI::ShowNumText ( bool is_show)

显示行号

◆ SortColumn()

void BUI::CTableViewUI::SortColumn ( )

◆ VisableAll()

void BUI::CTableViewUI::VisableAll ( bool is_show,
BOOL is_erase = TRUE )

设置所有行的显示状态为bShow

◆ VisableRowCount()

int BUI::CTableViewUI::VisableRowCount ( ) const

可见行总数

鄂公网安备42018502007752 鄂ICP备2024082886
Copyright © 2026 · CBlueStudio 版权所有