Alignment
Alignment enum for positioning UI elements within their parent.
Overview
The Alignment IntEnum controls how UI elements are positioned relative to their parent container. It affects how h_align and v_align properties position elements and which margins apply.
Quick Reference
# Center a caption in its parent frame
caption = mcrfpy.Caption(text="Centered", pos=(0, 0))
caption.h_align = mcrfpy.Alignment.CENTER
caption.v_align = mcrfpy.Alignment.CENTER
# Position in top-right corner with margin
sprite = mcrfpy.Sprite(texture=tex, pos=(0, 0))
sprite.h_align = mcrfpy.Alignment.RIGHT
sprite.v_align = mcrfpy.Alignment.TOP
sprite.horiz_margin = 10
sprite.vert_margin = 10
Values
| Value | Description |
|---|---|
TOP_LEFT |
Align to top-left corner |
TOP_CENTER |
Align to top center |
TOP_RIGHT |
Align to top-right corner |
CENTER_LEFT |
Align to center-left |
CENTER |
Align to center |
CENTER_RIGHT |
Align to center-right |
BOTTOM_LEFT |
Align to bottom-left corner |
BOTTOM_CENTER |
Align to bottom center |
BOTTOM_RIGHT |
Align to bottom-right corner |
Margin Rules
Different alignments use different margin properties:
| Alignment | Horizontal Margin | Vertical Margin |
|---|---|---|
CENTER |
Not used | Not used |
TOP_CENTER, BOTTOM_CENTER |
Not used | Applied |
CENTER_LEFT, CENTER_RIGHT |
Applied | Not used |
Corners (TOP_LEFT, etc.) |
Applied | Applied |
Usage with h_align and v_align
Elements have separate horizontal and vertical alignment:
# Different h_align and v_align combinations
element.h_align = mcrfpy.Alignment.LEFT # or CENTER, RIGHT
element.v_align = mcrfpy.Alignment.TOP # or CENTER, BOTTOM
# The alignment values map to these behaviors:
# LEFT/TOP = start of axis
# CENTER = middle of axis
# RIGHT/BOTTOM = end of axis