The split container is a container with a movable split and the option for 2 or 3 elements.
import toga split = toga.SplitContainer() left_container = toga.Box() right_container = toga.ScrollContainer() split.content = [left_container, right_container]
Setting split direction#
Split direction is set on instantiation using the direction keyword argument. Direction is vertical by default.
import toga split = toga.SplitContainer(direction=toga.SplitContainer.HORIZONTAL) left_container = toga.Box() right_container = toga.ScrollContainer() split.content = [left_container, right_container]
- class toga.widgets.splitcontainer.SplitContainer(id=None, style=None, direction=VERTICAL, content=None, factory=None)#
A SplitContainer displays two widgets vertically or horizontally next to each other with a movable divider.
id (str) – An identifier for this widget.
Style) – An optional style object. If no style is provided then a new one will be created for the widget.
direction – The direction for the container split, either SplitContainer.HORIZONTAL or SplitContainer.VERTICAL
Widget) – The list of components to be split or tuples of components to be split and adjusting parameters in the following order: widget (
Widget): The widget that will be added. weight (float): Specifying the weighted splits. flex (boolean): Should the content expand when the widget is resized. (optional)
- HORIZONTAL = False#
- VERTICAL = True#
Add the provided widgets as children of this widget.
If a node already has a different parent, it will be moved over. This does nothing if a node already is a child of this node.
ValueErrorif this widget cannot have children.
children – The widgets to add as children of this widget.
- property app#
The App to which this widget belongs.
When setting the app for a widget, all children of this widget will be recursively assigned to the same app.
ValueErrorif the widget is already associated with another app.
- property can_have_children#
Determine if the node can have children.
This does not resolve whether there actually are any children; it only confirms whether children are theoretically allowed.
- property children#
The children of this node. This always returns a list, even if the node is a leaf and cannot have children.
A list of the children for this widget.
- property content#
The sub layouts of the SplitContainer.
Widget. Each element of the list is a sub layout of the SplitContainer
ValueError – If the list is less than two elements long.
- property direction#
The direction of the split.
True if True for vertical, False for horizontal.
- property enabled#
Is the widget currently enabled? i.e., can the user interact with the widget?
Set this widget to have the current input focus.
- property id#
The node identifier. This id can be used to target styling directives.
- insert(index, child)#
Insert a widget as a child of this widget.
If the node already has a parent, ownership of the widget will be transferred.
ValueErrorif this node cannot have children.
index – The position in the list of children where the new widget should be added.
child – The child to insert as a child of this node.
- property parent#
The parent of this node.
The parent of this node. Returns None if this node is the root node.
Refresh the layout and appearance of the tree this node is contained in.
Refresh the layout and appearance of this widget.
Remove the provided widgets as children of this node.
This does nothing if a given node is not a child of this node.
ValueErrorif this node is a leaf, and cannot have children.
children – The child nodes to remove.
- property root#
The root of the tree containing this node.
The root node. Returns self if this node is the root node.
- property tab_index#
The position of the widget in the focus chain for the window.
- property window#
The window to which this widget belongs.
When setting the window for a widget, all children of this widget will be recursively assigned to the same window.