rich.layout

class rich.layout.ColumnSplitter[source]

将布局区域拆分为多列。

divide(children, region)[source]

将区域划分为多个子布局。

参数
  • children (Sequence(Layout)) – 一些子布局。

  • region (Region) – 要划分的矩形区域。

返回类型

Iterable[Tuple[Layout, Region]]

get_tree_icon()[source]

获取布局.tree 中使用的图标(表情符号)。

返回类型

str

class rich.layout.Layout(renderable=None, *, name=None, size=None, minimum_size=1, ratio=1, visible=True)[source]

一个可渲染对象,用于将固定高度划分为行或列。

参数
  • renderable (RenderableType, optional) – 可渲染内容,或 None 用于占位符。默认值:None。

  • name (str, optional) – 布局的可选标识符。默认值:None。

  • size (int, optional) – 布局的可选固定大小。默认值:None。

  • minimum_size (int, optional) – 布局的最小大小。默认值:1。

  • ratio (int, optional) – 灵活布局的可选比例。默认值:1。

  • visible (bool, optional) – 布局的可见性。默认值:True。

add_split(*layouts)[source]

向现有拆分中添加新的布局()。

参数

*layouts (Union[Layout, RenderableType]) – 位置参数应该是可渲染对象或(子)布局实例。

返回类型

None

property children: List[Layout]

获取(可见的)布局子项。

get(name)[source]

获取命名布局,如果不存在则返回 None。

参数

name (str) – 布局名称。

返回值

布局实例或 None,如果未找到布局。

返回类型

Optional[Layout]

property map: Dict[Layout, LayoutRender]

获取上次渲染的映射。

refresh_screen(console, layout_name)[source]

刷新子布局。

参数
  • console (Console) – 布局要渲染到的控制台实例。

  • layout_name (str) – 布局名称。

返回类型

None

render(console, options)[source]

渲染子布局。

参数
返回值

一个字典,将布局映射到 Region 和行的元组。

返回类型

RenderMap

property renderable: Union[ConsoleRenderable, RichCast, str]

布局可渲染对象。

split(*layouts, splitter='column')[source]

将布局拆分为多个子布局。

参数
  • *layouts (Layout) – 位置参数应该是(子)布局实例。

  • splitter (Union[Splitter, str]) – 拆分器实例或拆分器名称。

返回类型

None

split_column(*layouts)[source]

将布局拆分为一列(布局彼此堆叠)。

参数

*layouts (Layout) – 位置参数应该是(子)布局实例。

返回类型

None

split_row(*layouts)[source]

将布局拆分为一行(布局并排)。

参数

*layouts (Layout) – 位置参数应该是(子)布局实例。

返回类型

None

property tree: Tree

获取一个树形渲染对象以显示布局结构。

unsplit()[source]

将拆分重置为初始状态。

返回类型

None

update(renderable)[source]

更新可渲染对象。

参数

renderable (RenderableType) – 新的渲染对象。

返回类型

None

exception rich.layout.LayoutError[source]

布局相关的错误。

class rich.layout.LayoutRender(region, render)[source]

单个布局渲染。

参数
property region

字段 0 的别名

property render

字段 1 的别名

exception rich.layout.NoSplitter[source]

请求的分隔符不存在。

class rich.layout.RowSplitter[source]

将布局区域分成行。

divide(children, region)[source]

将区域划分为多个子布局。

参数
  • children (Sequence(Layout)) – 一些子布局。

  • region (Region) – 要划分的矩形区域。

返回类型

Iterable[Tuple[Layout, Region]]

get_tree_icon()[source]

获取布局.tree 中使用的图标(表情符号)。

返回类型

str

class rich.layout.Splitter[source]

分隔符的基类。

abstract divide(children, region)[source]

将区域划分为多个子布局。

参数
  • children (Sequence(Layout)) – 一些子布局。

  • region (Region) – 要划分的矩形区域。

返回类型

Iterable[Tuple[Layout, Region]]

abstract get_tree_icon()[source]

获取布局.tree 中使用的图标(表情符号)。

返回类型

str