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

控件基类 更多...

+ 类 BUI::CControlUI 继承关系图:

Public 成员函数

 CControlUI ()
 
virtual ~CControlUI ()
 
BOOL Create (IManageHandler *pManger, LPCTSTR strObjName, LPCTSTR strText, DWORD style, RECT rc, CControlUI *parent=NULL, UINT nID=0)
 创建虚拟控件:创建过程中,会将控件加入到全局的垃圾管理机制中。用于在程序退出时,释放内存
 
BOOL Create (IManageHandler *pManger, LPCTSTR strObjName, LPCTSTR strText, DWORD style, int x, int y, int cx, int cy, CControlUI *pPar=NULL, UINT nID=0)
 
void InsertChild (CControlUI *pNewChild, CControlUI *pPrev)
 插入子控件
 
BOOL RemoveChild (CControlUI *pChild)
 
BOOL SendParentMessage (UINT message, WPARAM wParam, LPARAM lParam) const
 
BOOL SendToManager (UINT message, WPARAM wParam=0, LPARAM lParam=0)
 
void SendToAllChilds (UINT message, WPARAM wParam, LPARAM lParam)
 将消息传递给每一个子控件响应
 
void SetEventHandler (IEventHandler *hander)
 设置消息托管
 
void SetParent (CControlUI *pParent)
 设置父控件
 
CControlUIParent () const
 父控件
 
CControlUIFirstChild () const
 第一个孩子节点
 
CControlUILastChild () const
 最后的孩子节点
 
CControlUINextSibling () const
 下一个兄弟节点
 
CControlUIPrevSibling () const
 上一个兄弟节点
 
CControlUIDelegaterPrev () const
 托管链表前向指针
 
CControlUIDelegaterNext () const
 托管链表后向指针
 
void ModifyControlFlags (uint64_t style, UINT op=ADD_FLAGS)
 设置控件风格
 
uint64_t IsHasControlFlags (uint64_t flags) const
 
uint64_t GetControlFlags () const
 
void SetControlNotes (BeString str)
 设置控件注释信息
 
BeString GetControlNotes () const
 获得控件的注释信息
 
LPCTSTR Text () const
 
void SetControlText (BeString str, BOOL bRefresh=FALSE)
 设置文本
 
void SetControlTextByNumber (double value, int nPrecision, BOOL remoe_last_zero)
 以数值设置文本
 
double GetControlTextNumber () const
 获得文本表示的数值
 
void SetAdaptMinText (BeString str)
 布局最小适应文本
 
void SetVarName (const BeString &str)
 
void SetVarNameA (const char *varname)
 
void SetVarNameW (const WCHAR *varname)
 
void SetCommitTarget (ICommitTarget *obj)
 设置数据提交对象
 
void AddAbsordLayout (std::shared_ptr< ILayout > layout)
 
void DelAbsordLayout (std::shared_ptr< ILayout > layout)
 
COLORSTYLE GetControlColorsStyle (ColorSceneType type)
 获取颜色外观
 
void SetControlColorsStyle (ColorSceneType type, COLORSTYLE colors)
 设置颜色外观
 
void SetAttributeSaveNode (XMLItem *node)
 设置属性保存节点
 
XMLItemGetAttributeSaveNode () const
 获得属性保存节点
 
void DoSaveAttributeToNode ()
 保存控件属性到(SetSaveNode(node))注册的节点
 
void SetShadowText (int dx, int dy, int blur_x, int blur_y, GColor color)
 设置文本阴影
 
void SetBorderRoundFlags (int pos, int flags)
 
void SetBorderRoundSize (RoundRectRadius &radius)
 
void GetRoundRadius (RoundRectRadius &ra) const
 
void GetRoundRadiusWithRect (const RECT &rc, RoundRectRadius &ra) const
 
GShadowContainGetShadowContain ()
 获得阴影容器对象
 
GFontGetFont () const
 
void SetFont (GFont *font)
 设置字体
 
void SetFontSize (int nHeight)
 设置字体大小
 
void SetBorderSize (UINT size)
 
void SetPositionX (int x)
 
void SetPositionY (int y)
 
void SetPositionXY (int x, int y)
 
int SaveAsImage (LPCTSTR outpng)
 保存控件图像为png
 
int SaveAsLongImage (LPCTSTR outpng)
 保存为长图
 
int Width () const
 
void SetWidth (int w)
 
int Height () const
 
void SetHeight (int h)
 
void BindAction (std::shared_ptr< IActionNotify > notify)
 绑定事件
 
void ClearAction ()
 清空事件
 
void TriggerAction ()
 触发事件
 
void SetCaptureCtl ()
 捕获鼠标
 
void ReleaseCaptureCtl ()
 
void BreakAwayUITree ()
 脱离父控件树
 
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 lpSz=NULL)
 提示框显示位置 x, y 是相对窗口
 
void TipHide ()
 
void ShowControl (bool bShow, bool notify_layout=true)
 显示虚拟窗口
 
void SetVisibleWhenMouseHover (BOOL open)
 设置只在鼠标悬停时,显示控件
 
BOOL IsVisible () const
 控件在父控件中的显示状态
 
BOOL IsFocused () const
 焦点状态
 
void EnableControl (bool bEnable, bool refresh=true)
 TRUE:启用控件. FALSE:禁用控件
 
void EnableNodeFlagControl (bool bEnable, bool refresh=true)
 nodedata包含的控件。表示node是否被禁用
 
BOOL IsEnabled () const
 TRUE 代表可用
 
BOOL IsBkShowTiming () const
 
void SetBkShowTiming (ShowModel mode)
 背景绘制时机
 
void SetBorderShowTiming (ShowModel mode)
 边框绘制时机
 
BOOL IsCreateSucceed () const
 是否是成功的对象 true创建成功
 
BOOL IsShortCutVaild ()
 
void EnableShortCut (bool benable)
 
void SetShortCut (int vKey)
 
void SetShortCutCtrlCode (UBYTE vKey)
 
BOOL DoShortCut (UBYTE ctrl, UBYTE vKey)
 
void EnableBorderAdjustFlag (UINT alignborder=ALIGN_LEFT, bool bEnable=true)
 设置边框调整使能
 
void SetToolTipText (LPCTSTR lpszTip)
 设置提示文本
 
void SetToolTipText (BeString strTip)
 
void SetPopTipUI (std::shared_ptr< CControlUI > popui, std::shared_ptr< PopControlInfo > popinfo)
 设置弹出pop显示ui
 
void PopTipUI (BOOL bShow)
 展示pop状态
 
BOOL HitTestPopUI (POINT pt)
 是否命中弹出控件
 
void GetRectInScreen (LPRECT lpRect)
 获得在HWND中的绝对位置
 
void SetControlMouseCursor (CursorMouse id)
 
void SetFocus ()
 取得焦点 和HWND焦点不要混淆 ,这是不一样的东西,只是函数名称我为了好记住
 
void Scroll (int x, int y)
 视区的坐标原点偏移
 
void Refresh (BOOL bSynch=FALSE)
 窗口失效重绘
 
void RefreshThreadSafe ()
 在gui线程之外时调安全的刷新函数
 
void RefreshRect (RECT *lprcUpdate)
 窗口失效重绘
 
void GetDragPos (RECT *lprect) const
 窗口拖拽的原始位置
 
void OnDestory ()
 控件销毁
 
void UpdateAdaptLayout () const
 更新adapt布局
 
BOOL MoveControl (RECT rect, BOOL bRepaint=TRUE)
 
BOOL MoveControl (int x, int y, int w, int h, BOOL bRepaint=TRUE)
 移动控件位置。(x,y)代表父控件坐标空间值
 
void MoveDragControl (int dx, int dy, BOOL bRepaint=TRUE)
 拖拽移动。(dx,dy)移动距离向量
 
void MoveCenterByPercent (RECT *rcView, float xScale=0.5, float yScale=0.5, int w=0, int h=0, BOOL bRepaint=TRUE)
 将控件移动到以(xScale, yScale)百分比的中心点
 
void ResetLayoutChilds (UINT flags=0)
 重置子布局
 
void SetSkinModule (BeString &skinGroup)
 设置皮肤id
 
void SetSkinStyle (BeString &skinName)
 设置皮肤id
 
void SetDrawStyleWithFourCode (LPCTSTR draw_style)
 设置控件绘制的风格样式,同一种控件的表现样式可以有多种。 输入值只有前四位字符有效。一个控件表现形式在实际中不会很多。不用整形的目的是增强可读性
 
BOOL IsDrawStyleWithFourCode (TCHAR a='\0', TCHAR b='\0', TCHAR c='\0', TCHAR d='\0') const
 
void GetSkinModule (BeStringShort64 &moduleName)
 
void GetSkinStyle (BeStringShort64 &styleName)
 
RECT GetControlRect () const
 
RECT GetControlClientRect () const
 返回基于客户区的坐标
 
RECT GetControlScreenRect () const
 返回基于屏幕的坐标
 
RECT GetOppositePosition (RECT rcContainer, RECT rcChild) const
 返回rcChild相对rcrcContainer坐标系的位置
 
SIZE GetStringSize (LPCTSTR str) const
 获得字符串尺寸
 
POINT ViewOrigin () const
 坐标原点偏移量
 
ILayoutGetAttchLayout () const
 获得管理控件自身的布局对象
 
ShowStatus GetPaintStatus (bool ignoreLButton=true) const
 获得控件状态
 
POINT GetClientPoint (double w_percent, double h_percent)
 获得控件坐标系下百分比的绝对位置
 
void InsertGCChain (CControlUI *prev, CControlUI *next)
 
void DeleteGCChain (CControlUI *prev, CControlUI *next)
 
CControlUIFindTabFocusControl (BOOL isNext) const
 获得接下来的焦点控件
 
void NotifyMangerIsDestory ()
 告知管理者已销毁
 
IManageHandlerGetManagerUI () const
 
ST_PolicyGetSignalPolicy ()
 
BOOL TranslateSyncMsg (UINT message, WPARAM wParam, LPARAM lParam)
 向上层转发同步消息
 
BOOL OnMessageHandler (UINT message, WPARAM wParam, LPARAM lParam) override
 虚拟控件最终消息处理过程
 
int FindChildControlByHandler (std::vector< CControlUI * > &vec, IEventHandler *handler)
 查找(通过控件的SetEventHandler()指定的事件处理对象来寻找)
 
int FindAllControlByName (std::vector< CControlUI * > &vec, LPCTSTR szName, BOOL isRecursiveCall=TRUE) const
 在当前控件之下查找所有同名控件
 
int FindAllControl (std::vector< CControlUI * > &vec, BOOL isRecursiveCall=TRUE) const
 获得所有子控件
 
CControlUIFindControlByName (LPCTSTR szName, BOOL isRecursiveCall=TRUE) const
 在当前控件之下查找控件
 
CControlUIGetParent () const
 获得父窗口
 
CControlUIGetParentOnTopMost () const
 获得最顶层父窗口
 
CControlUIHitTestChildControl (POINT pt) const
 定位到子控件对象
 
CControlUINextFocusControl (BOOL isPrev=FALSE) const
 
void SaveSettingConfig ()
 保存配置
 
virtual CControlUIHitTestControl (POINT pt)
 根据位置得到最终的定位控件
 
virtual void GetLayoutViewRect (RECT *rc)
 
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 (int theme)
 切换主题色
 
virtual void ShellAttribute (const BeString &szName, const BeString &szText)
 命令控制和属性设置接口
 
BOOL ShellAttributeToChildControl (const BeString &childname, const BeString &szName, const BeString &szText)
 
virtual void OnParseItemData (XMLItem *pNode)
 解析xml文件对应的数据
 
virtual void OnSaveConfigSetting (XMLItem *node)
 保存控件属性到全局配置文件
 
virtual void OnLoadConfigSetting (XMLItem *node)
 加载控件属性
 
virtual void OnCreate ()
 产生时间是窗口创建之后显示之前
 
virtual void OnFontChange ()
 字体更改
 
virtual void OnControlSize ()
 控件尺寸改变时触发
 
virtual void OnShow (bool bShow)
 
virtual void OnCtrlKillFocus ()
 ui控件失去焦点
 
virtual void OnCtrlSetFocus ()
 ui控件获得焦点
 
virtual BOOL HitTest (POINT pt)
 点击测试
 
virtual BOOL OnKillFocus (WPARAM wParam, LPARAM lParam)
 当管理的句柄HWND失去焦点时 进入此函数,也就是此函数实际上是窗口 MSG_WND_KILLFOCUS的响应
 
virtual BOOL OnHSCrollBar (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnVSCrollBar (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnSetCursor (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnNcHitTest (POINT pt)
 
virtual BOOL OnMouseMove (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnMouseEnter (WPARAM wParam, LPARAM lParam)
 在鼠标进入控件时触发
 
virtual BOOL OnMouseLeave (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnMouseWheel (WPARAM wParam, LPARAM lParam)
 鼠标滑轮消息
 
virtual BOOL OnLButtonDown (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnLButtonUp (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnLButtonCliked (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnRButtonDown (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnRButtonUp (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnRButtonCliked (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnKeyDown (WPARAM wParam, LPARAM lParam)
 键盘消息
 
virtual BOOL OnKeyUp (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnChar (WPARAM wParam, LPARAM lParam)
 
virtual BOOL OnTimerEvent (unsigned int timerid, UINT umsec)
 定时器事件响应
 
virtual BOOL OnPaintControl (ISurface *pSurface, LPRECT lprcUpdate=NULL, LPRECT lprcParentViewPort=NULL)
 lprcUpdate :控件的局部更新区域, 为 NULL 表示全部更新
 
virtual BOOL DoPaintShadow (ISurface *pSurface, bool inset, RECT *lpUpdate)
 lpUpdate 表示需要重绘的区域,这个区域的坐标表示是基于HWND窗口坐标系下的。也就是绝对位置。
 
virtual BOOL DoPaintBackGround (ISurface *pSurface, RECT *lpUpdate)
 绘制背景
 
virtual BOOL DoPaint (ISurface *pSurface, RECT *lpUpdate)
 绘制前景
 
virtual BOOL DoPaintBorder (ISurface *pSurface, RECT *lpUpdate)
 绘制边框
 
virtual BOOL DoPaintFinished (ISurface *pSurface, RECT *lpUpdate)
 绘制结束事件,极少场景需要用到
 
virtual BOOL OnDropBegin ()
 鼠标拖拽开始
 
virtual BOOL OnDropEnd ()
 鼠标拖拽结束
 
virtual void CloneAttribute (CControlUI *clone)
 克隆属性
 
int LayoutAdaptWidth (int expH) override
 
int LayoutAdaptHeight (int expW) override
 
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, SizeMode stw, SizeMode sth)
 
void ChangeManager (IManageHandler *pMagr)
 改变控件的管理对象(将抽象控件改变实际窗口的作用域)。
 
- Public 成员函数 继承自 BUI::ICommitTarget
 ICommitTarget ()
 
virtual ~ICommitTarget ()
 
virtual void OnSummitTarget (FourCode four_code, LPCTSTR data)
 对象之间传递数据的提交操作
 
- Public 成员函数 继承自 BUI::IControlUI
 IControlUI ()
 
virtual ~IControlUI ()
 
virtual int LayoutAdaptWidth (int expH)
 
virtual int LayoutAdaptHeight (int expW)
 
virtual int GetSplitControlOffsetW ()
 获得拆分宽度偏移
 
virtual int GetSplitControlOffsetH ()
 获得拆分高度偏移
 
virtual void Layout (int x, int y, int w, int h, UINT flags=0)
 
virtual RECT GetPosition ()
 
virtual bool IsVisibleLayout ()
 
- Public 成员函数 继承自 BUI::IEventHandler
 IEventHandler ()
 
virtual ~IEventHandler ()
 
virtual BOOL OnMessageHandler (UINT message, WPARAM wp, LPARAM lp)
 

静态 Public 成员函数

static void ChangeParent (CControlUI *pThis, CControlUI *pNewpar, CControlUI *pAfterchild)
 
static void ParseShortCutText (const char *text, UINT &vCtrl, UINT &vKey)
 解析快捷键
 
static BeString ConvertShortCutCodeToText (UINT vCtrl, UINT vKey)
 快捷键转换为字符串
 

Public 属性

BeString m_strVarName
 
UINT m_nID
 
IManageHandlerm_pMangerUI
 
CControlUIm_pParent
 
CControlUIm_pFirstChild
 
CControlUIm_pLastChild
 
CControlUIm_pNextSibling
 
CControlUIm_pPrevSibling
 
CControlUIm_gc_prev_
 
CControlUIm_gc_next_
 
CControlUIm_break_prev_
 
CControlUIm_break_next_
 
RECT m_rcAbsolute
 

Protected 成员函数

void UpdateMarginStateFlag ()
 更新margin状态标志位
 
RECT GetMarginAreaRect () const
 
BOOL SetMouseCursor (CursorMouse id)
 设置系统光标
 
void InsertBreakChain (CControlUI *prev, CControlUI *next)
 
void DeleteBreakChain (CControlUI *prev, CControlUI *next)
 
void ClientToHWNDScreen ()
 将控件坐标转换为窗口下的坐标
 
void RePlotChildPos ()
 
void AdjustLayoutControlSize (POINT pt)
 用户调整控件大小
 
BOOL IsRedrawHovn () const
 
void NotifyChildControlEnableChange (bool bEnable)
 父控件被禁用时,同步更新子控件禁用状态
 
void NotifyChildControlVisableChange (bool bShow)
 父控件被隐藏时,同步更新子控件隐藏状态
 

静态 Protected 成员函数

static UBYTE ReturnBitFlag (UBYTE value, UINT bit_pos, BOOL bEnable)
 

Protected 属性

IEventHandlerm_eventHandler
 
BeString m_strText
 
BeString m_skinModuleName
 
BeString m_skinStyleName
 
BeString m_strCaptureFile
 
BeString m_strNotes
 
Location m_locationinfo
 
POINT m_ptViewOrigin
 
RECT m_rcTrackDrag
 
RECT m_rcChipZoom
 
RECTm_pRectClipParent
 
COLORSTYLE m_bgColors
 
COLORSTYLE m_fgColors
 
COLORSTYLE m_textColors
 
COLORSTYLE m_borderColors
 
RoundRectRadius m_RoundRadius
 
UBYTE m_roundRadiusFlags
 
MarginInfo m_marginOnHover
 
CursorMouse m_idCursor
 
GFontm_pFont
 
uint64_t m_nCtlFlags
 
UINT m_borderSize
 
ICommitTargetm_commit_target
 
FourCode m_draw_style
 
BeString m_popTipText
 
std::shared_ptr< CControlUIm_popBoxUI
 
std::shared_ptr< PopControlInfom_popUser
 
ActionList m_action
 
std::vector< std::shared_ptr< ILayout > > m_absord_uis
 
ST_Policy m_sigPolicy
 
syntax_infom_cmd_ast
 
XMLItemm_save_node
 
BeString m_strMinAdapter
 
ILayoutm_pCtrlOfLayout
 
GShadowContain m_shadow_contain
 
ShadowInfom_shadow_text
 
UBYTE m_vKeyCtrl
 
UBYTE m_vKeyCode
 
UBYTE m_uHitFlag
 
UBYTE m_uVisible
 全部为0代表可见 bit0: 表示控件自身的可视状态 bit1: 表示父控件的可视状态 bit2: 表示鼠标进入时才有可视状态
 
UBYTE m_uEnable
 全部为0代表可用 bit0 表示控件自身的可用状态 bit1 表示父控件的禁用状态 bit2: nodecell禁用状态
 
UBYTE m_bkShowTiming
 ShowModel OnNever 从不绘制 OnAlways 一直绘制 OnHighLight 高亮时绘制
 
UBYTE m_borderShowTiming
 
UBYTE m_key_down
 

详细描述

控件基类

构造及析构函数说明

◆ CControlUI()

BUI::CControlUI::CControlUI ( )

◆ ~CControlUI()

virtual BUI::CControlUI::~CControlUI ( )
virtual

成员函数说明

◆ Activate()

virtual void BUI::CControlUI::Activate ( )
virtual

◆ AddAbsordLayout()

void BUI::CControlUI::AddAbsordLayout ( std::shared_ptr< ILayout layout)

◆ AdjustLayoutControlSize()

void BUI::CControlUI::AdjustLayoutControlSize ( POINT  pt)
protected

用户调整控件大小

◆ BindAction()

void BUI::CControlUI::BindAction ( std::shared_ptr< IActionNotify notify)

绑定事件

◆ BoxLayoutMgr()

virtual ILayout * BUI::CControlUI::BoxLayoutMgr ( )
virtual

容器布局对象

BUI::CContainLayoutUI 重载.

◆ BreakAwayUITree()

void BUI::CControlUI::BreakAwayUITree ( )

脱离父控件树

◆ BringBottomMost()

BOOL BUI::CControlUI::BringBottomMost ( )

将控件移动到所有兄弟控件中的第一个

◆ BringTopMost()

BOOL BUI::CControlUI::BringTopMost ( )

将控件移动到所有兄弟控件中的最后一个

◆ ChangeManager()

void BUI::CControlUI::ChangeManager ( IManageHandler pMagr)

改变控件的管理对象(将抽象控件改变实际窗口的作用域)。

◆ ChangeParent()

static void BUI::CControlUI::ChangeParent ( CControlUI pThis,
CControlUI pNewpar,
CControlUI pAfterchild 
)
static

◆ ChangeThemeColors()

◆ ClearAction()

void BUI::CControlUI::ClearAction ( )

清空事件

◆ ClientToHWNDScreen()

void BUI::CControlUI::ClientToHWNDScreen ( )
protected

将控件坐标转换为窗口下的坐标

◆ Clone()

virtual CControlUI * BUI::CControlUI::Clone ( )
virtual

克隆对象

◆ CloneAttribute()

◆ ConvertShortCutCodeToText()

static BeString BUI::CControlUI::ConvertShortCutCodeToText ( UINT  vCtrl,
UINT  vKey 
)
static

快捷键转换为字符串

◆ Create() [1/2]

BOOL BUI::CControlUI::Create ( IManageHandler pManger,
LPCTSTR  strObjName,
LPCTSTR  strText,
DWORD  style,
int  x,
int  y,
int  cx,
int  cy,
CControlUI pPar = NULL,
UINT  nID = 0 
)

◆ Create() [2/2]

BOOL BUI::CControlUI::Create ( IManageHandler pManger,
LPCTSTR  strObjName,
LPCTSTR  strText,
DWORD  style,
RECT  rc,
CControlUI parent = NULL,
UINT  nID = 0 
)

创建虚拟控件:创建过程中,会将控件加入到全局的垃圾管理机制中。用于在程序退出时,释放内存

参数
pManger管理对象 不能为空对象
strObjName控件的检索标识符号,可用来查找控件
strText控件文本内容
style控件风格
rc位置信息
parent父控件指针
nID整型检索ID
返回
BOOL TRUE 创建成功 FALSE创建失败

◆ DelAbsordLayout()

void BUI::CControlUI::DelAbsordLayout ( std::shared_ptr< ILayout layout)

◆ DelegaterNext()

CControlUI * BUI::CControlUI::DelegaterNext ( ) const

托管链表后向指针

◆ DelegaterPrev()

CControlUI * BUI::CControlUI::DelegaterPrev ( ) const

托管链表前向指针

◆ DeleteBreakChain()

void BUI::CControlUI::DeleteBreakChain ( CControlUI prev,
CControlUI next 
)
protected

◆ DeleteGCChain()

void BUI::CControlUI::DeleteGCChain ( CControlUI prev,
CControlUI next 
)

◆ DoPaint()

◆ DoPaintBackGround()

virtual BOOL BUI::CControlUI::DoPaintBackGround ( ISurface pSurface,
RECT lpUpdate 
)
virtual

◆ DoPaintBorder()

virtual BOOL BUI::CControlUI::DoPaintBorder ( ISurface pSurface,
RECT lpUpdate 
)
virtual

◆ DoPaintFinished()

virtual BOOL BUI::CControlUI::DoPaintFinished ( ISurface pSurface,
RECT lpUpdate 
)
virtual

绘制结束事件,极少场景需要用到

BUI::CNodeEditorUI 重载.

◆ DoPaintShadow()

virtual BOOL BUI::CControlUI::DoPaintShadow ( ISurface pSurface,
bool  inset,
RECT lpUpdate 
)
virtual

lpUpdate 表示需要重绘的区域,这个区域的坐标表示是基于HWND窗口坐标系下的。也就是绝对位置。

BUI::CButtonPolygonUI, BUI::CButtonTextureUI, BUI::CBinaryBoxUI, BUI::CLayoutArrowContainUI, BUI::COptionUI, BUI::CDigitLcdUI , 以及 BUI::CProgressBarUI 重载.

◆ DoSaveAttributeToNode()

void BUI::CControlUI::DoSaveAttributeToNode ( )

保存控件属性到(SetSaveNode(node))注册的节点

◆ DoShortCut()

BOOL BUI::CControlUI::DoShortCut ( UBYTE  ctrl,
UBYTE  vKey 
)

◆ EnableBorderAdjustFlag()

void BUI::CControlUI::EnableBorderAdjustFlag ( UINT  alignborder = ALIGN_LEFT,
bool  bEnable = true 
)

设置边框调整使能

◆ EnableControl()

void BUI::CControlUI::EnableControl ( bool  bEnable,
bool  refresh = true 
)

TRUE:启用控件. FALSE:禁用控件

◆ EnableNodeFlagControl()

void BUI::CControlUI::EnableNodeFlagControl ( bool  bEnable,
bool  refresh = true 
)

nodedata包含的控件。表示node是否被禁用

◆ EnableShortCut()

void BUI::CControlUI::EnableShortCut ( bool  benable)

◆ FindAllControl()

int BUI::CControlUI::FindAllControl ( std::vector< CControlUI * > &  vec,
BOOL  isRecursiveCall = TRUE 
) const

获得所有子控件

参数
vec
isRecursiveCall是否递归(包含递归的子控件)
返回
int 控件个数

◆ FindAllControlByName()

int BUI::CControlUI::FindAllControlByName ( std::vector< CControlUI * > &  vec,
LPCTSTR  szName,
BOOL  isRecursiveCall = TRUE 
) const

在当前控件之下查找所有同名控件

参数
szName
vec
isRecursiveCall是否递归(包含递归的子控件)
返回
int 控件个数

◆ FindChildControlByHandler()

int BUI::CControlUI::FindChildControlByHandler ( std::vector< CControlUI * > &  vec,
IEventHandler handler 
)

查找(通过控件的SetEventHandler()指定的事件处理对象来寻找)

参数
handler
vec
返回
int

◆ FindControlByName()

CControlUI * BUI::CControlUI::FindControlByName ( LPCTSTR  szName,
BOOL  isRecursiveCall = TRUE 
) const

在当前控件之下查找控件

◆ FindTabFocusControl()

CControlUI * BUI::CControlUI::FindTabFocusControl ( BOOL  isNext) const

获得接下来的焦点控件

◆ FirstChild()

CControlUI * BUI::CControlUI::FirstChild ( ) const

第一个孩子节点

◆ GetAttchLayout()

ILayout * BUI::CControlUI::GetAttchLayout ( ) const

获得管理控件自身的布局对象

◆ GetAttributeSaveNode()

XMLItem * BUI::CControlUI::GetAttributeSaveNode ( ) const

获得属性保存节点

◆ GetClientPoint()

POINT BUI::CControlUI::GetClientPoint ( double  w_percent,
double  h_percent 
)

获得控件坐标系下百分比的绝对位置

◆ GetControlClientRect()

RECT BUI::CControlUI::GetControlClientRect ( ) const

返回基于客户区的坐标

◆ GetControlColorsStyle()

COLORSTYLE BUI::CControlUI::GetControlColorsStyle ( ColorSceneType  type)

获取颜色外观

◆ GetControlFlags()

uint64_t BUI::CControlUI::GetControlFlags ( ) const

◆ GetControlNotes()

BeString BUI::CControlUI::GetControlNotes ( ) const

获得控件的注释信息

◆ GetControlRect()

RECT BUI::CControlUI::GetControlRect ( ) const

◆ GetControlScreenRect()

RECT BUI::CControlUI::GetControlScreenRect ( ) const

返回基于屏幕的坐标

◆ GetControlText()

virtual BeString BUI::CControlUI::GetControlText ( )
virtual

BUI::CDateUI , 以及 BUI::CListBoxUI 重载.

◆ GetControlTextNumber()

double BUI::CControlUI::GetControlTextNumber ( ) const

获得文本表示的数值

◆ GetControlValueText()

virtual void BUI::CControlUI::GetControlValueText ( BasicStringBuffer buffer)
virtual

获得控件所表达的数据的文本,比如复选框的状态("0"/"1"),方便上层统一操作

BUI::CCheckBoxUI, BUI::CComboBaseUI, BUI::COptionUI, BUI::CDateTimeUI, BUI::CEditTextUI, BUI::CEditGPSLocationUI, BUI::CListBoxUI, BUI::CProgressBarUI , 以及 BUI::CSliderUI 重载.

◆ GetDragPos()

void BUI::CControlUI::GetDragPos ( RECT lprect) const

窗口拖拽的原始位置

◆ GetFont()

GFont * BUI::CControlUI::GetFont ( ) const

◆ GetLayoutViewRect()

virtual void BUI::CControlUI::GetLayoutViewRect ( RECT rc)
virtual

◆ GetManagerUI()

IManageHandler * BUI::CControlUI::GetManagerUI ( ) const

◆ GetMarginAreaRect()

RECT BUI::CControlUI::GetMarginAreaRect ( ) const
protected

◆ GetOppositePosition()

RECT BUI::CControlUI::GetOppositePosition ( RECT  rcContainer,
RECT  rcChild 
) const

返回rcChild相对rcrcContainer坐标系的位置

◆ GetPaintStatus()

ShowStatus BUI::CControlUI::GetPaintStatus ( bool  ignoreLButton = true) const

获得控件状态

◆ GetParent()

CControlUI * BUI::CControlUI::GetParent ( ) const

获得父窗口

◆ GetParentOnTopMost()

CControlUI * BUI::CControlUI::GetParentOnTopMost ( ) const

获得最顶层父窗口

◆ GetPosition()

RECT BUI::CControlUI::GetPosition ( )
overridevirtual

重载 BUI::IControlUI .

◆ GetRectInScreen()

void BUI::CControlUI::GetRectInScreen ( LPRECT  lpRect)

获得在HWND中的绝对位置

◆ GetRoundRadius()

void BUI::CControlUI::GetRoundRadius ( RoundRectRadius ra) const

◆ GetRoundRadiusWithRect()

void BUI::CControlUI::GetRoundRadiusWithRect ( const RECT rc,
RoundRectRadius ra 
) const

◆ GetShadowContain()

GShadowContain & BUI::CControlUI::GetShadowContain ( )

获得阴影容器对象

◆ GetSignalPolicy()

ST_Policy * BUI::CControlUI::GetSignalPolicy ( )

◆ GetSkinModule()

void BUI::CControlUI::GetSkinModule ( BeStringShort64 moduleName)

◆ GetSkinStyle()

void BUI::CControlUI::GetSkinStyle ( BeStringShort64 styleName)

◆ GetSplitControlOffsetH()

int BUI::CControlUI::GetSplitControlOffsetH ( )
overridevirtual

获得拆分高度偏移

重载 BUI::IControlUI .

BUI::CSplitBarUI 重载.

◆ GetSplitControlOffsetW()

int BUI::CControlUI::GetSplitControlOffsetW ( )
overridevirtual

获得拆分宽度偏移

重载 BUI::IControlUI .

BUI::CSplitBarUI 重载.

◆ GetStringSize()

SIZE BUI::CControlUI::GetStringSize ( LPCTSTR  str) const

获得字符串尺寸

◆ Height()

int BUI::CControlUI::Height ( ) const

◆ HitTest()

virtual BOOL BUI::CControlUI::HitTest ( POINT  pt)
virtual

点击测试

BUI::CButtonPolygonUI , 以及 BUI::CLineArrowUI 重载.

◆ HitTestChildControl()

CControlUI * BUI::CControlUI::HitTestChildControl ( POINT  pt) const

定位到子控件对象

◆ HitTestControl()

virtual CControlUI * BUI::CControlUI::HitTestControl ( POINT  pt)
virtual

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

Value 1 Description 1
Value 2 Description 2

BUI::CContainTitleUI, BUI::CListBoxUI, BUI::CScrollBarUI, BUI::CTableViewUI, BUI::CTreeListUI , 以及 BUI::CTreeTableViewUI 重载.

◆ HitTestPopUI()

BOOL BUI::CControlUI::HitTestPopUI ( POINT  pt)

是否命中弹出控件

◆ InsertBreakChain()

void BUI::CControlUI::InsertBreakChain ( CControlUI prev,
CControlUI next 
)
protected

◆ InsertChild()

void BUI::CControlUI::InsertChild ( CControlUI pNewChild,
CControlUI pPrev 
)

插入子控件

参数
pNewChild待插入的子控件UI
ppRev子控件的上一个兄弟节点

◆ InsertGCChain()

void BUI::CControlUI::InsertGCChain ( CControlUI prev,
CControlUI next 
)

◆ IsBkShowTiming()

BOOL BUI::CControlUI::IsBkShowTiming ( ) const

◆ IsCreateSucceed()

BOOL BUI::CControlUI::IsCreateSucceed ( ) const

是否是成功的对象 true创建成功

◆ IsDrawStyleWithFourCode()

BOOL BUI::CControlUI::IsDrawStyleWithFourCode ( TCHAR  a = '\0',
TCHAR  b = '\0',
TCHAR  c = '\0',
TCHAR  d = '\0' 
) const

◆ IsEnabled()

BOOL BUI::CControlUI::IsEnabled ( ) const

TRUE 代表可用

◆ IsFocused()

BOOL BUI::CControlUI::IsFocused ( ) const

焦点状态

◆ IsHasControlFlags()

uint64_t BUI::CControlUI::IsHasControlFlags ( uint64_t  flags) const

◆ IsRedrawHovn()

BOOL BUI::CControlUI::IsRedrawHovn ( ) const
protected

◆ IsShortCutVaild()

BOOL BUI::CControlUI::IsShortCutVaild ( )

◆ IsVisible()

BOOL BUI::CControlUI::IsVisible ( ) const

控件在父控件中的显示状态

◆ IsVisibleLayout()

bool BUI::CControlUI::IsVisibleLayout ( )
overridevirtual

重载 BUI::IControlUI .

◆ LastChild()

CControlUI * BUI::CControlUI::LastChild ( ) const

最后的孩子节点

◆ Layout()

void BUI::CControlUI::Layout ( int  x,
int  y,
int  w,
int  h,
UINT  flags 
)
overridevirtual

重载 BUI::IControlUI .

◆ LayoutAdaptHeight()

int BUI::CControlUI::LayoutAdaptHeight ( int  expW)
overridevirtual

◆ LayoutAdaptWidth()

int BUI::CControlUI::LayoutAdaptWidth ( int  expH)
overridevirtual

◆ ModifyControlFlags()

void BUI::CControlUI::ModifyControlFlags ( uint64_t  style,
UINT  op = ADD_FLAGS 
)

设置控件风格

参数
styleControlFlag组合值
opADD_FLAGS(添加属性) REMOVE_FLAGS(删除属性)

◆ MoveCenterByPercent()

void BUI::CControlUI::MoveCenterByPercent ( RECT rcView,
float  xScale = 0.5,
float  yScale = 0.5,
int  w = 0,
int  h = 0,
BOOL  bRepaint = TRUE 
)

将控件移动到以(xScale, yScale)百分比的中心点

参数
rcView视区位置信息
xScaleyScale 控件中心坐标
wh 控件尺寸,为0时保持当前大小
bRepaint需要刷新重绘

◆ MoveControl() [1/2]

BOOL BUI::CControlUI::MoveControl ( int  x,
int  y,
int  w,
int  h,
BOOL  bRepaint = TRUE 
)

移动控件位置。(x,y)代表父控件坐标空间值

◆ MoveControl() [2/2]

BOOL BUI::CControlUI::MoveControl ( RECT  rect,
BOOL  bRepaint = TRUE 
)

◆ MoveDragControl()

void BUI::CControlUI::MoveDragControl ( int  dx,
int  dy,
BOOL  bRepaint = TRUE 
)

拖拽移动。(dx,dy)移动距离向量

◆ NextFocusControl()

CControlUI * BUI::CControlUI::NextFocusControl ( BOOL  isPrev = FALSE) const

◆ NextSibling()

CControlUI * BUI::CControlUI::NextSibling ( ) const

下一个兄弟节点

◆ NotifyChildControlEnableChange()

void BUI::CControlUI::NotifyChildControlEnableChange ( bool  bEnable)
protected

父控件被禁用时,同步更新子控件禁用状态

◆ NotifyChildControlVisableChange()

void BUI::CControlUI::NotifyChildControlVisableChange ( bool  bShow)
protected

父控件被隐藏时,同步更新子控件隐藏状态

◆ NotifyMangerIsDestory()

void BUI::CControlUI::NotifyMangerIsDestory ( )

告知管理者已销毁

◆ OnChar()

virtual BOOL BUI::CControlUI::OnChar ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

◆ OnControlSize()

◆ OnCreate()

◆ OnCtrlKillFocus()

virtual void BUI::CControlUI::OnCtrlKillFocus ( )
virtual

◆ OnCtrlSetFocus()

virtual void BUI::CControlUI::OnCtrlSetFocus ( )
virtual

ui控件获得焦点

BUI::CComboBaseUI, BUI::CEditRichUI , 以及 BUI::CEditTextUI 重载.

◆ OnDestory()

void BUI::CControlUI::OnDestory ( )

控件销毁

◆ OnDropBegin()

virtual BOOL BUI::CControlUI::OnDropBegin ( )
virtual

鼠标拖拽开始

◆ OnDropEnd()

virtual BOOL BUI::CControlUI::OnDropEnd ( )
virtual

鼠标拖拽结束

◆ OnFontChange()

virtual void BUI::CControlUI::OnFontChange ( )
virtual

字体更改

BUI::CEditRichUI , 以及 BUI::CEditTextUI 重载.

◆ OnHSCrollBar()

virtual BOOL BUI::CControlUI::OnHSCrollBar ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

BUI::CContainerUI , 以及 BUI::CScrollAreaUI 重载.

◆ OnKeyDown()

◆ OnKeyUp()

virtual BOOL BUI::CControlUI::OnKeyUp ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

BUI::CEditSpinBoxUI 重载.

◆ OnKillFocus()

virtual BOOL BUI::CControlUI::OnKillFocus ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

当管理的句柄HWND失去焦点时 进入此函数,也就是此函数实际上是窗口 MSG_WND_KILLFOCUS的响应

◆ OnLButtonCliked()

virtual BOOL BUI::CControlUI::OnLButtonCliked ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

◆ OnLButtonDown()

◆ OnLButtonUp()

◆ OnLoadConfigSetting()

virtual void BUI::CControlUI::OnLoadConfigSetting ( XMLItem node)
virtual

加载控件属性

BUI::CEditTextUI , 以及 BUI::CListBoxUI 重载.

◆ OnMessageHandler()

◆ OnMouseEnter()

virtual BOOL BUI::CControlUI::OnMouseEnter ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

在鼠标进入控件时触发

BUI::CScrollAreaUI 重载.

◆ OnMouseLeave()

◆ OnMouseMove()

◆ OnMouseWheel()

virtual BOOL BUI::CControlUI::OnMouseWheel ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

鼠标滑轮消息

BUI::CEditRichUI , 以及 BUI::CScrollAreaUI 重载.

◆ OnNcHitTest()

◆ OnPaintControl()

virtual BOOL BUI::CControlUI::OnPaintControl ( ISurface pSurface,
LPRECT  lprcUpdate = NULL,
LPRECT  lprcParentViewPort = NULL 
)
virtual

lprcUpdate :控件的局部更新区域, 为 NULL 表示全部更新

◆ OnParseItemData()

◆ OnRButtonCliked()

virtual BOOL BUI::CControlUI::OnRButtonCliked ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

BUI::CListBoxUI 重载.

◆ OnRButtonDown()

virtual BOOL BUI::CControlUI::OnRButtonDown ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

◆ OnRButtonUp()

virtual BOOL BUI::CControlUI::OnRButtonUp ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

◆ OnSaveConfigSetting()

virtual void BUI::CControlUI::OnSaveConfigSetting ( XMLItem node)
virtual

保存控件属性到全局配置文件

BUI::CEditTextUI , 以及 BUI::CListBoxUI 重载.

◆ OnSetCursor()

virtual BOOL BUI::CControlUI::OnSetCursor ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

◆ OnShow()

virtual void BUI::CControlUI::OnShow ( bool  bShow)
virtual

◆ OnTimerEvent()

virtual BOOL BUI::CControlUI::OnTimerEvent ( unsigned int  timerid,
UINT  umsec 
)
virtual

定时器事件响应

◆ OnVSCrollBar()

virtual BOOL BUI::CControlUI::OnVSCrollBar ( WPARAM  wParam,
LPARAM  lParam 
)
virtual

◆ Parent()

CControlUI * BUI::CControlUI::Parent ( ) const

父控件

◆ ParseShortCutText()

static void BUI::CControlUI::ParseShortCutText ( const char *  text,
UINT vCtrl,
UINT vKey 
)
static

解析快捷键

◆ PopTipUI()

void BUI::CControlUI::PopTipUI ( BOOL  bShow)

展示pop状态

◆ PrevSibling()

CControlUI * BUI::CControlUI::PrevSibling ( ) const

上一个兄弟节点

◆ Refresh()

void BUI::CControlUI::Refresh ( BOOL  bSynch = FALSE)

窗口失效重绘

◆ RefreshRect()

void BUI::CControlUI::RefreshRect ( RECT lprcUpdate)

窗口失效重绘

◆ RefreshThreadSafe()

void BUI::CControlUI::RefreshThreadSafe ( )

在gui线程之外时调安全的刷新函数

◆ ReleaseCaptureCtl()

void BUI::CControlUI::ReleaseCaptureCtl ( )

◆ RemoveChild()

BOOL BUI::CControlUI::RemoveChild ( CControlUI pChild)

◆ RePlotChildPos()

void BUI::CControlUI::RePlotChildPos ( )
protected

◆ ResetLayoutChilds()

void BUI::CControlUI::ResetLayoutChilds ( UINT  flags = 0)

重置子布局

◆ ReturnBitFlag()

static UBYTE BUI::CControlUI::ReturnBitFlag ( UBYTE  value,
UINT  bit_pos,
BOOL  bEnable 
)
staticprotected

◆ SaveAsImage()

int BUI::CControlUI::SaveAsImage ( LPCTSTR  outpng)

保存控件图像为png

◆ SaveAsLongImage()

int BUI::CControlUI::SaveAsLongImage ( LPCTSTR  outpng)

保存为长图

◆ SaveSettingConfig()

void BUI::CControlUI::SaveSettingConfig ( )

保存配置

◆ Scroll()

void BUI::CControlUI::Scroll ( int  x,
int  y 
)

视区的坐标原点偏移

◆ SendParentMessage()

BOOL BUI::CControlUI::SendParentMessage ( UINT  message,
WPARAM  wParam,
LPARAM  lParam 
) const

◆ SendToAllChilds()

void BUI::CControlUI::SendToAllChilds ( UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)

将消息传递给每一个子控件响应

◆ SendToManager()

BOOL BUI::CControlUI::SendToManager ( UINT  message,
WPARAM  wParam = 0,
LPARAM  lParam = 0 
)

◆ SetAdaptMinText()

void BUI::CControlUI::SetAdaptMinText ( BeString  str)

布局最小适应文本

◆ SetAttributeSaveNode()

void BUI::CControlUI::SetAttributeSaveNode ( XMLItem node)

设置属性保存节点

◆ SetBkShowTiming()

void BUI::CControlUI::SetBkShowTiming ( ShowModel  mode)

背景绘制时机

◆ SetBorderRoundFlags()

void BUI::CControlUI::SetBorderRoundFlags ( int  pos,
int  flags 
)

◆ SetBorderRoundSize()

void BUI::CControlUI::SetBorderRoundSize ( RoundRectRadius radius)

◆ SetBorderShowTiming()

void BUI::CControlUI::SetBorderShowTiming ( ShowModel  mode)

边框绘制时机

◆ SetBorderSize()

void BUI::CControlUI::SetBorderSize ( UINT  size)

◆ SetCaptureCtl()

void BUI::CControlUI::SetCaptureCtl ( )

捕获鼠标

◆ SetClipZoom()

void BUI::CControlUI::SetClipZoom ( int  x,
int  y,
int  w,
int  h 
)

设置控件可视裁剪区域。约束控件的显示区域

◆ SetCommitTarget()

void BUI::CControlUI::SetCommitTarget ( ICommitTarget obj)

设置数据提交对象

◆ SetControlColorsStyle()

void BUI::CControlUI::SetControlColorsStyle ( ColorSceneType  type,
COLORSTYLE  colors 
)

设置颜色外观

◆ SetControlMouseCursor()

void BUI::CControlUI::SetControlMouseCursor ( CursorMouse  id)

◆ SetControlNotes()

void BUI::CControlUI::SetControlNotes ( BeString  str)

设置控件注释信息

◆ SetControlText()

void BUI::CControlUI::SetControlText ( BeString  str,
BOOL  bRefresh = FALSE 
)

设置文本

◆ SetControlTextByNumber()

void BUI::CControlUI::SetControlTextByNumber ( double  value,
int  nPrecision,
BOOL  remoe_last_zero 
)

以数值设置文本

◆ SetControlValueText()

virtual void BUI::CControlUI::SetControlValueText ( const BeString str)
virtual

设置控件所表达的数据的文本,比如复选框的状态("0"/"1"),方便上层统一操作

BUI::CCheckBoxUI, BUI::CComboBaseUI, BUI::CDateTimeUI, BUI::CEditSpinBoxUI, BUI::CEditTextUI, BUI::CEditGPSLocationUI , 以及 BUI::CListBoxUI 重载.

◆ SetDrawStyleWithFourCode()

void BUI::CControlUI::SetDrawStyleWithFourCode ( LPCTSTR  draw_style)

设置控件绘制的风格样式,同一种控件的表现样式可以有多种。 输入值只有前四位字符有效。一个控件表现形式在实际中不会很多。不用整形的目的是增强可读性

参数
draw_style类型由四个ASCII字符的组合。

◆ SetEventHandler()

void BUI::CControlUI::SetEventHandler ( IEventHandler hander)

设置消息托管

◆ SetFocus()

void BUI::CControlUI::SetFocus ( )

取得焦点 和HWND焦点不要混淆 ,这是不一样的东西,只是函数名称我为了好记住

◆ SetFont()

void BUI::CControlUI::SetFont ( GFont font)

设置字体

◆ SetFontSize()

void BUI::CControlUI::SetFontSize ( int  nHeight)

设置字体大小

◆ SetHeight()

void BUI::CControlUI::SetHeight ( int  h)

◆ SetLauoutInfo()

void BUI::CControlUI::SetLauoutInfo ( ILayout parent,
int  w,
int  h,
SizeMode  stw,
SizeMode  sth 
)

◆ SetMouseCursor()

BOOL BUI::CControlUI::SetMouseCursor ( CursorMouse  id)
protected

设置系统光标

◆ SetParent()

void BUI::CControlUI::SetParent ( CControlUI pParent)

设置父控件

◆ SetPopTipUI()

void BUI::CControlUI::SetPopTipUI ( std::shared_ptr< CControlUI popui,
std::shared_ptr< PopControlInfo popinfo 
)

设置弹出pop显示ui

◆ SetPositionX()

void BUI::CControlUI::SetPositionX ( int  x)

◆ SetPositionXY()

void BUI::CControlUI::SetPositionXY ( int  x,
int  y 
)

◆ SetPositionY()

void BUI::CControlUI::SetPositionY ( int  y)

◆ SetShadowText()

void BUI::CControlUI::SetShadowText ( int  dx,
int  dy,
int  blur_x,
int  blur_y,
GColor  color 
)

设置文本阴影

◆ SetShortCut()

void BUI::CControlUI::SetShortCut ( int  vKey)

◆ SetShortCutCtrlCode()

void BUI::CControlUI::SetShortCutCtrlCode ( UBYTE  vKey)

◆ SetSkinModule()

void BUI::CControlUI::SetSkinModule ( BeString skinGroup)

设置皮肤id

◆ SetSkinStyle()

void BUI::CControlUI::SetSkinStyle ( BeString skinName)

设置皮肤id

◆ SetToolTipText() [1/2]

void BUI::CControlUI::SetToolTipText ( BeString  strTip)

◆ SetToolTipText() [2/2]

void BUI::CControlUI::SetToolTipText ( LPCTSTR  lpszTip)

设置提示文本

◆ SetVarName()

void BUI::CControlUI::SetVarName ( const BeString str)

◆ SetVarNameA()

void BUI::CControlUI::SetVarNameA ( const char *  varname)

◆ SetVarNameW()

void BUI::CControlUI::SetVarNameW ( const WCHAR varname)

◆ SetVisibleWhenMouseHover()

void BUI::CControlUI::SetVisibleWhenMouseHover ( BOOL  open)

设置只在鼠标悬停时,显示控件

◆ SetWidth()

void BUI::CControlUI::SetWidth ( int  w)

◆ ShellAttribute()

virtual void BUI::CControlUI::ShellAttribute ( const BeString szName,
const BeString szText 
)
virtual

命令控制和属性设置接口

szName属性 szText语法格式
text
设置控件文本
text="按钮"
note
设置控件注释信息
note="这是一个用于控制XXX的按钮"
back-colors
背景颜色
back-colors="normal:0x343434;light:rgb(20,20,20,255);selected:hsv(25,100,100,255);disable:#343434"
front-colors
前景颜色
front-colors="normal:0x343434;light:rgb(20,20,20,255);selected:hsv(25,100,100,255);disable:#343434"
text-colors
文本颜色
text-colors="normal:0x343434;light:rgb(20,20,20,255);selected:hsv(25,100,100,255);disable:#343434"
border-colors
边框颜色
border-colors="normal:0x343434;light:rgb(20,20,20,255);selected:hsv(25,100,100,255);disable:#343434"
border-size
边框画笔大小
border-size="2"
round-radius
控件圆角
round-radius="left-top:10,10;right-top:10,10;right-bottom:10,10;left-bottom:10,10"
round-radius="rx:10;ry:10"
font
设置字体
font="name"
border-show
边框显示属性
取值 never:不显示, always:显示, highlight:鼠标悬停时显示, focus:控件获得焦点时显示
back-show
背景显示属性
取值 never:不显示, always:显示, highlight:鼠标悬停时显示, focus:控件获得焦点时显示
shadow
阴影特效
shadow="dx,dy,blur_x,blur_y,spread_x,spread_y,colo,inset" shadow="3,3, 2,2, 0,0, rgb(0,0,0,100),inset;3,3, 2,2, 0,0,rgb(0,0,0,100),inset"
visible
可见性
取值 true/false
enable
可用性/禁用状态
取值 true/false
tooltip
提示文本
tooltip="这是一段鼠标悬停时的提示文本内容"
nID
控件整数ID
nID="101"
skin-id
皮肤唯一标识符,查找皮肤时的关键key
skin-id="skin_white"
cursor
光标
取值:arrow,ibeam,hand,wait,cross,uparrow,size,icon,sizenwse,sizenesw,sizewe,sizens,sizeall,no
isShortCut
是否可以响应快捷键
true/false
shortcut
响应快捷键
shortcut="ctrl+B"
refresh
刷新控件
true/false
margin-hot
热点时的边缘膨胀尺寸
margin="2,2,2,2" 左上右下的顺序
control-flags
功能标志位
"-"前缀代表删除属性
如 control-flags="AllowFocusWhenClick,-SupportTabKey"
StaticState :静态控件,不响应键盘和鼠标
AllowFocusWhenClick :用户单击时可控件获取焦点
AllowCaptureMouseWhenClick :用户左键时,捕获鼠标
SupportTabKey :支持tab获得焦点
AutoSeatLayout :自动占位布局
ShowMarginOnCaptureMouse :鼠标悬停时,显示边缘膨胀特效
ShowMarginOnFocus :获得焦点时,显示边缘膨胀特效
RoundRadiusDrawLine :控件圆角
RoundRadiusParl: 控件Parl四边形
HideWndWhenClick :单击时隐藏窗口
forcelayout:控件尺寸变化时,强制重新计算布局位置
use-par-color-fg : 控件前景颜色,使用父控件的
use-par-color-border : 控件边框颜色,使用父控件的
use-par-color-text : 控件文本颜色,使用父控件的
DisableTheme :禁用主题颜色
ZOverSpeedup :控件多到影响性能时启用
启用后会用算法计算控件的遮盖信息,快速定位
StorageUserSetting :自动存储控件内容到全局配置文件
FixedOnView : 控件坐标原点改变时,此控件固定不变
OnlyMoveInParent : 仅在父控件视窗下移动
datafile
数据文件
datafile="文件路径"

BUI::CChartViewUI, BUI::CButtonUI, BUI::CButtonSysUI, BUI::CButtonMenuUI, BUI::CButtonSVGUI, BUI::CButtonImageUI, BUI::CButtonSwitchImageUI, BUI::CButtonGradientUI, BUI::CButtonPolygonUI, BUI::CButtonTextureUI, BUI::CButtonNodeUI, BUI::CIndicatorLightUI, BUI::CCheckBoxUI, BUI::CBinaryBoxUI, BUI::CColorPickerUI, BUI::CComboBaseUI, BUI::CComboListUI, BUI::CComboDateUI, BUI::CComboDateRangeUI, BUI::CComboColorPickerUI, BUI::CContainerUI, BUI::CContainLayoutUI, BUI::CAutoMoveContainUI, BUI::CLayoutArrowContainUI, BUI::CContainMenuUI, BUI::COptionUI, BUI::CContainOptionUI, BUI::CContainScrollSyncUI, BUI::CContainTabUI, BUI::CContainTitleUI, BUI::CDateUI, BUI::CDateTimeUI, BUI::CDigitLcdUI, BUI::CEditKeyBoardUI, BUI::CEditSpinBoxUI, BUI::CEditRichUI, BUI::CEditTextUI, BUI::CEditCombinationUI, BUI::CEditIPAddressUI, BUI::CEditGPSLocationUI, BUI::CImageViewUI, BUI::CImageViewListUI, BUI::CGIFViewUI, BUI::CLabelMultiStyleUI, BUI::CLabelUI, BUI::CStaticMarkUI, BUI::CLineUI, BUI::CLineArrowUI, BUI::CListBoxUI, BUI::CMatrixUI, BUI::CPaginationUI, BUI::CPopControlUI, BUI::CProgressBarUI, BUI::CSliderUI, BUI::CScrollBarUI, BUI::CScrollAreaUI, BUI::CSplitBarUI, BUI::CTableViewUI, BUI::CTreeListUI, BUI::CTreeTableViewUI, BUI::CZBarCodeUI , 以及 BUI::CNodeEditorUI 重载.

◆ ShellAttributeToChildControl()

BOOL BUI::CControlUI::ShellAttributeToChildControl ( const BeString childname,
const BeString szName,
const BeString szText 
)

◆ ShowControl()

void BUI::CControlUI::ShowControl ( bool  bShow,
bool  notify_layout = true 
)

显示虚拟窗口

◆ TestOrder()

BOOL BUI::CControlUI::TestOrder ( ) const

判断是否被其他控件遮盖 TRUE 代表遮盖

◆ Text()

LPCTSTR BUI::CControlUI::Text ( ) const

◆ TipHide()

void BUI::CControlUI::TipHide ( )

◆ TipTrack()

void BUI::CControlUI::TipTrack ( int  x,
int  y,
LPCTSTR  lpSz = NULL 
)

提示框显示位置 x, y 是相对窗口

◆ TranslateSyncMsg()

BOOL BUI::CControlUI::TranslateSyncMsg ( UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)

向上层转发同步消息

◆ TriggerAction()

void BUI::CControlUI::TriggerAction ( )

触发事件

◆ UpdateAdaptLayout()

void BUI::CControlUI::UpdateAdaptLayout ( ) const

更新adapt布局

◆ UpdateMarginStateFlag()

void BUI::CControlUI::UpdateMarginStateFlag ( )
protected

更新margin状态标志位

◆ ViewOrigin()

POINT BUI::CControlUI::ViewOrigin ( ) const

坐标原点偏移量

◆ Width()

int BUI::CControlUI::Width ( ) const

类成员变量说明

◆ m_absord_uis

std::vector<std::shared_ptr<ILayout> > BUI::CControlUI::m_absord_uis
protected

◆ m_action

ActionList BUI::CControlUI::m_action
protected

◆ m_bgColors

COLORSTYLE BUI::CControlUI::m_bgColors
protected

◆ m_bkShowTiming

UBYTE BUI::CControlUI::m_bkShowTiming
protected

ShowModel OnNever 从不绘制 OnAlways 一直绘制 OnHighLight 高亮时绘制

◆ m_borderColors

COLORSTYLE BUI::CControlUI::m_borderColors
protected

◆ m_borderShowTiming

UBYTE BUI::CControlUI::m_borderShowTiming
protected

◆ m_borderSize

UINT BUI::CControlUI::m_borderSize
protected

◆ m_break_next_

CControlUI* BUI::CControlUI::m_break_next_

◆ m_break_prev_

CControlUI* BUI::CControlUI::m_break_prev_

◆ m_cmd_ast

syntax_info* BUI::CControlUI::m_cmd_ast
protected

◆ m_commit_target

ICommitTarget* BUI::CControlUI::m_commit_target
protected

◆ m_draw_style

FourCode BUI::CControlUI::m_draw_style
protected

◆ m_eventHandler

IEventHandler* BUI::CControlUI::m_eventHandler
protected

◆ m_fgColors

COLORSTYLE BUI::CControlUI::m_fgColors
protected

◆ m_gc_next_

CControlUI* BUI::CControlUI::m_gc_next_

◆ m_gc_prev_

CControlUI* BUI::CControlUI::m_gc_prev_

◆ m_idCursor

CursorMouse BUI::CControlUI::m_idCursor
protected

◆ m_key_down

UBYTE BUI::CControlUI::m_key_down
protected

◆ m_locationinfo

Location BUI::CControlUI::m_locationinfo
protected

◆ m_marginOnHover

MarginInfo BUI::CControlUI::m_marginOnHover
protected

◆ m_nCtlFlags

uint64_t BUI::CControlUI::m_nCtlFlags
protected

◆ m_nID

UINT BUI::CControlUI::m_nID

◆ m_pCtrlOfLayout

ILayout* BUI::CControlUI::m_pCtrlOfLayout
protected

◆ m_pFirstChild

CControlUI* BUI::CControlUI::m_pFirstChild

◆ m_pFont

GFont* BUI::CControlUI::m_pFont
protected

◆ m_pLastChild

CControlUI* BUI::CControlUI::m_pLastChild

◆ m_pMangerUI

IManageHandler* BUI::CControlUI::m_pMangerUI

◆ m_pNextSibling

CControlUI* BUI::CControlUI::m_pNextSibling

◆ m_popBoxUI

std::shared_ptr<CControlUI> BUI::CControlUI::m_popBoxUI
protected

◆ m_popTipText

BeString BUI::CControlUI::m_popTipText
protected

◆ m_popUser

std::shared_ptr<PopControlInfo> BUI::CControlUI::m_popUser
protected

◆ m_pParent

CControlUI* BUI::CControlUI::m_pParent

◆ m_pPrevSibling

CControlUI* BUI::CControlUI::m_pPrevSibling

◆ m_pRectClipParent

RECT* BUI::CControlUI::m_pRectClipParent
protected

◆ m_ptViewOrigin

POINT BUI::CControlUI::m_ptViewOrigin
protected

◆ m_rcAbsolute

RECT BUI::CControlUI::m_rcAbsolute

◆ m_rcChipZoom

RECT BUI::CControlUI::m_rcChipZoom
protected

◆ m_rcTrackDrag

RECT BUI::CControlUI::m_rcTrackDrag
protected

◆ m_RoundRadius

RoundRectRadius BUI::CControlUI::m_RoundRadius
protected

◆ m_roundRadiusFlags

UBYTE BUI::CControlUI::m_roundRadiusFlags
protected

◆ m_save_node

XMLItem* BUI::CControlUI::m_save_node
protected

◆ m_shadow_contain

GShadowContain BUI::CControlUI::m_shadow_contain
protected

◆ m_shadow_text

ShadowInfo* BUI::CControlUI::m_shadow_text
protected

◆ m_sigPolicy

ST_Policy BUI::CControlUI::m_sigPolicy
protected

◆ m_skinModuleName

BeString BUI::CControlUI::m_skinModuleName
protected

◆ m_skinStyleName

BeString BUI::CControlUI::m_skinStyleName
protected

◆ m_strCaptureFile

BeString BUI::CControlUI::m_strCaptureFile
protected

◆ m_strMinAdapter

BeString BUI::CControlUI::m_strMinAdapter
protected

◆ m_strNotes

BeString BUI::CControlUI::m_strNotes
protected

◆ m_strText

BeString BUI::CControlUI::m_strText
protected

◆ m_strVarName

BeString BUI::CControlUI::m_strVarName

◆ m_textColors

COLORSTYLE BUI::CControlUI::m_textColors
protected

◆ m_uEnable

UBYTE BUI::CControlUI::m_uEnable
protected

全部为0代表可用 bit0 表示控件自身的可用状态 bit1 表示父控件的禁用状态 bit2: nodecell禁用状态

◆ m_uHitFlag

UBYTE BUI::CControlUI::m_uHitFlag
protected

◆ m_uVisible

UBYTE BUI::CControlUI::m_uVisible
protected

全部为0代表可见 bit0: 表示控件自身的可视状态 bit1: 表示父控件的可视状态 bit2: 表示鼠标进入时才有可视状态

◆ m_vKeyCode

UBYTE BUI::CControlUI::m_vKeyCode
protected

◆ m_vKeyCtrl

UBYTE BUI::CControlUI::m_vKeyCtrl
protected
鄂公网安备42018502007752 鄂ICP备2024082886
Copyright © 2025 · CBlueStudio 版权所有