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

盒子布局容器类. 水平盒子: 水平计算布局对象 垂直盒子: 垂直计算布局对象 层叠盒子: Z方向计算方式,所有对象共享区域 更多...

类 BUI::CLayoutBox 继承关系图:

Public 成员函数

 CLayoutBox (LayoutBoxType box_type=BoxVertical)
virtual ~CLayoutBox ()
int GetZCurSel () const
void SetLayoutCurSel (int index)
int GetCounts (BOOL only_visable=TRUE) const
void GetAllLayout (std::vector< CLayoutBase * > list) const
BOOL AddLayout (CLayoutBase *obj, BOOL is_manual_free=FALSE)
 添加的布局对象需要由用户自己释放。传入指针,不负责指针的销毁
CLayoutBoxAddVerLayout (int w, int h, LayoutMode mw, LayoutMode mh)
CLayoutBoxAddHorLayout (int w, int h, LayoutMode mw, LayoutMode mh)
CLayoutBoxAddLayeredLayout (int w, int h, LayoutMode mw, LayoutMode mh)
CLayoutSpacerAddSpacer (int w, int h, LayoutMode mw, LayoutMode mh)
CLayoutControlAddLayoutCtrl (IControlUI *obj, int w, int h, LayoutMode mw, LayoutMode mh)
CLayoutBaseHitTestSplit (POINT pt) const
 测试点命中布局间隔的信息
void SetScaleFactor (int scale)
void RemoveAllLayout ()
void SetLayoutBoxType (LayoutBoxType box_type=BoxHorizontal)
void SetLayoutReverse (BOOL is_reverse)
void SetCrossOffset (int d)
BOOL LayoutReverse () const
void ShellLayoutBoxAttribute (LPCTSTR str_name, LPCTSTR str_value)
int GetAdaptWidth (int parent_w, int parent_h) override
 获得自适应宽度
int GetAdaptHeight (int parent_w, int parent_h) override
 获得自适应高度
bool IsHasAdaptLayout () override
 判断是否是自适应的布局对象。
bool IsVisibleLayout () override
 判断布局可见性
void GetPosition (RECT &rc) override
 获得布局矩形区域
BOOL OnLayoutMessageProc (UINT message, WPARAM wp, LPARAM lp) override
 布局对象消息处理函数
void OnDrawLayout (ISurface *surface, int x0, int y0, RECT *rect_update) override
 绘制布局对象
void Layout (int x, int y, int w, int h, UINT flags=0) override
 执行布局操作
BOOL ResetLayout () override
ILayoutFindLayoutByName (LPCTSTR name) override
 根据名称查询布局对象
Public 成员函数 继承自 BUI::CLayoutBase
 CLayoutBase ()
virtual ~CLayoutBase ()
AlignType HorAlign ()
 水平对齐方式
AlignType VerAlign ()
 垂直对齐方式
LayoutMode WidthType ()
 宽度模式
LayoutMode HeightType ()
 高度模式
int Width ()
 获得布局容器的宽度
int Height ()
 : 获得布局容器的高度
void SetLayoutVisible (BOOL is_show, BOOL is_relayout=TRUE)
 设置布局的可见性
void SetScaleFactor (float scale)
 布局缩放系数。默认为1.0
virtual SIZE GetSize (int w, int h)
 获得布局尺寸
virtual void CheckSizeRange (SIZE *sz, int w, int h)
 检查
int GetSplitOffsetW () override
 获得拆分宽度偏移
int GetSplitOffsetH () override
 获得拆分高度偏移
void SetLayoutInfo (int w, int h, LayoutMode mw, LayoutMode mh) override
 设置布局信息
void GetLayoutInfo (int &w, int &h, LayoutMode &mw, LayoutMode &mh) override
 获得布局信息
void SetAlignment (AlignType hor, AlignType ver) override
 设置布局容器内的对象水平和垂直的对齐风格
void SetPadding (int l, int r, int t, int b) override
 设置内边距
void GetPadding (int &l, int &r, int &t, int &b) override
 获得内边距缩进
void SetWidthMin (LayoutValue w) override
 设置宽度的最小值
void SetWidthMax (LayoutValue w) override
 设置宽度的最大值
void SetHeightMin (LayoutValue h) override
 设置高度的最小值
void SetHeightMax (LayoutValue h) override
 设置高度的最大值
int GetWidthMin (int w) override
 获取宽度的最小值
int GetWidthMax (int w) override
 获取宽度的最大值
int GetHeightMin (int h) override
 获取高度的最小值
int GetHeightMax (int h) override
 获取高度的最大值
bool IsVaild () override
 判断布局是否失效
ILayoutGetParentLayout () override
 获得父布局
void RebuildLayout (bool is_force_update) override
 重置布局。
LayoutType GetLayoutType () override
 获得布局类型
Public 成员函数 继承自 BUI::ILayout
 ILayout ()
virtual ~ILayout ()
virtual POINT GetOrigin ()
 获取布局相对坐标基点。此基点为窗口坐标系下的绝对坐标

Public 属性

LayoutLinkNode m_head
int m_show_count
int m_interval
int m_overlap_offset
BOOL m_is_reverse
RECT m_rect_box
Public 属性 继承自 BUI::CLayoutBase
CLayoutBasem_parent_layout
LayoutLinkNode m_link
LayoutType m_layout_type
BeString m_name
BOOL m_is_visible
float m_scale_factor
int m_temp_size
int m_width
int m_height
LayoutMode m_width_mode
LayoutMode m_height_mode
AlignType m_hor_align
AlignType m_ver_align
PaddingInfo m_padding
LayoutValue m_width_min
LayoutValue m_width_max
LayoutValue m_height_min
LayoutValue m_height_max
SIZE m_pixel_size
 尺寸计算结果
int m_cache_offset_size

详细描述

盒子布局容器类. 水平盒子: 水平计算布局对象 垂直盒子: 垂直计算布局对象 层叠盒子: Z方向计算方式,所有对象共享区域

构造及析构函数说明

◆ CLayoutBox()

BUI::CLayoutBox::CLayoutBox ( LayoutBoxType box_type = BoxVertical)

◆ ~CLayoutBox()

virtual BUI::CLayoutBox::~CLayoutBox ( )
virtual

成员函数说明

◆ AddHorLayout()

CLayoutBox * BUI::CLayoutBox::AddHorLayout ( int w,
int h,
LayoutMode mw,
LayoutMode mh )

◆ AddLayeredLayout()

CLayoutBox * BUI::CLayoutBox::AddLayeredLayout ( int w,
int h,
LayoutMode mw,
LayoutMode mh )

◆ AddLayout()

BOOL BUI::CLayoutBox::AddLayout ( CLayoutBase * obj,
BOOL is_manual_free = FALSE )

添加的布局对象需要由用户自己释放。传入指针,不负责指针的销毁

◆ AddLayoutCtrl()

CLayoutControl * BUI::CLayoutBox::AddLayoutCtrl ( IControlUI * obj,
int w,
int h,
LayoutMode mw,
LayoutMode mh )

◆ AddSpacer()

CLayoutSpacer * BUI::CLayoutBox::AddSpacer ( int w,
int h,
LayoutMode mw,
LayoutMode mh )

◆ AddVerLayout()

CLayoutBox * BUI::CLayoutBox::AddVerLayout ( int w,
int h,
LayoutMode mw,
LayoutMode mh )

◆ FindLayoutByName()

ILayout * BUI::CLayoutBox::FindLayoutByName ( LPCTSTR name)
overridevirtual

根据名称查询布局对象

参数
name:名称ID
返回
ILayout* :返回布局抽象基类对象

重载 BUI::CLayoutBase .

◆ GetAdaptHeight()

int BUI::CLayoutBox::GetAdaptHeight ( int parent_w,
int parent_h )
overridevirtual

获得自适应高度

重载 BUI::CLayoutBase .

◆ GetAdaptWidth()

int BUI::CLayoutBox::GetAdaptWidth ( int parent_w,
int parent_h )
overridevirtual

获得自适应宽度

重载 BUI::CLayoutBase .

◆ GetAllLayout()

void BUI::CLayoutBox::GetAllLayout ( std::vector< CLayoutBase * > list) const

◆ GetCounts()

int BUI::CLayoutBox::GetCounts ( BOOL only_visable = TRUE) const

◆ GetPosition()

void BUI::CLayoutBox::GetPosition ( RECT & rc)
overridevirtual

获得布局矩形区域

重载 BUI::CLayoutBase .

◆ GetZCurSel()

int BUI::CLayoutBox::GetZCurSel ( ) const

◆ HitTestSplit()

CLayoutBase * BUI::CLayoutBox::HitTestSplit ( POINT pt) const

测试点命中布局间隔的信息

◆ IsHasAdaptLayout()

bool BUI::CLayoutBox::IsHasAdaptLayout ( )
overridevirtual

判断是否是自适应的布局对象。

重载 BUI::CLayoutBase .

◆ IsVisibleLayout()

bool BUI::CLayoutBox::IsVisibleLayout ( )
overridevirtual

判断布局可见性

重载 BUI::CLayoutBase .

◆ Layout()

void BUI::CLayoutBox::Layout ( int x,
int y,
int w,
int h,
UINT flags = 0 )
overridevirtual

执行布局操作

重载 BUI::CLayoutBase .

BUI::CLayoutCircle , 以及 BUI::CLayoutGrid 重载.

◆ LayoutReverse()

BOOL BUI::CLayoutBox::LayoutReverse ( ) const

◆ OnDrawLayout()

void BUI::CLayoutBox::OnDrawLayout ( ISurface * surface,
int x0,
int y0,
RECT * rect_update )
overridevirtual

绘制布局对象

重载 BUI::CLayoutBase .

◆ OnLayoutMessageProc()

BOOL BUI::CLayoutBox::OnLayoutMessageProc ( UINT message,
WPARAM wp,
LPARAM lp )
overridevirtual

布局对象消息处理函数

重载 BUI::CLayoutBase .

◆ RemoveAllLayout()

void BUI::CLayoutBox::RemoveAllLayout ( )

◆ ResetLayout()

BOOL BUI::CLayoutBox::ResetLayout ( )
overridevirtual

重载 BUI::CLayoutBase .

◆ SetCrossOffset()

void BUI::CLayoutBox::SetCrossOffset ( int d)

◆ SetLayoutBoxType()

void BUI::CLayoutBox::SetLayoutBoxType ( LayoutBoxType box_type = BoxHorizontal)

◆ SetLayoutCurSel()

void BUI::CLayoutBox::SetLayoutCurSel ( int index)

◆ SetLayoutReverse()

void BUI::CLayoutBox::SetLayoutReverse ( BOOL is_reverse)

◆ SetScaleFactor()

void BUI::CLayoutBox::SetScaleFactor ( int scale)

◆ ShellLayoutBoxAttribute()

void BUI::CLayoutBox::ShellLayoutBoxAttribute ( LPCTSTR str_name,
LPCTSTR str_value )

类成员变量说明

◆ m_head

LayoutLinkNode BUI::CLayoutBox::m_head

◆ m_interval

int BUI::CLayoutBox::m_interval

◆ m_is_reverse

BOOL BUI::CLayoutBox::m_is_reverse

◆ m_overlap_offset

int BUI::CLayoutBox::m_overlap_offset

◆ m_rect_box

RECT BUI::CLayoutBox::m_rect_box

◆ m_show_count

int BUI::CLayoutBox::m_show_count
鄂公网安备42018502007752 鄂ICP备2024082886
Copyright © 2026 · CBlueStudio 版权所有