M5Line
M5Line 是一个可在用户界面中绘制直线的控件,可用于绘制形状或连接多个点。
UiFlow2 示例
连接点
在 UiFlow2 中打开 cores3_line_example.m5f2 项目。
本示例将创建一条用于连接多个点的线段。
UiFlow2 代码块:
示例输出:
None
MicroPython 示例
连接点
本示例将创建一条用于连接多个点的线段。
MicroPython 代码块:
1# SPDX-FileCopyrightText: 2025 M5Stack Technology CO LTD 2# 3# SPDX-License-Identifier: MIT 4 5import os, sys, io 6import M5 7from M5 import * 8import m5ui 9import lvgl as lv 10 11 12page0 = None 13line0 = None 14 15 16def setup(): 17 global page0, line0 18 19 M5.begin() 20 Widgets.setRotation(1) 21 m5ui.init() 22 page0 = m5ui.M5Page(bg_c=0xFFFFFF) 23 line0 = m5ui.M5Line( 24 points=[5, 5, 70, 70, 120, 10, 180, 60, 190, 70, 200, 80, 210, 90, 220, 100], 25 width=7, 26 color=0x2196F3, 27 rounded=True, 28 parent=page0, 29 ) 30 31 page0.screen_load() 32 33 34def loop(): 35 global page0, line0 36 M5.update() 37 if M5.Touch.getCount(): 38 line0.add_point(M5.Touch.getX(), M5.Touch.getY()) 39 40 41if __name__ == "__main__": 42 try: 43 setup() 44 while True: 45 loop() 46 except (Exception, KeyboardInterrupt) as e: 47 try: 48 m5ui.deinit() 49 from utility import print_error_msg 50 51 print_error_msg(e) 52 except ImportError: 53 print("please update to latest firmware")
示例输出:
None
API参考
M5Line
- class m5ui.line.M5Line(*args, **kwargs)
基类:
line创建一个直线对象。
- 参数:
MicroPython 代码块:
from m5ui import M5Line import lvgl as lv m5ui.init() line_0 = M5Line( points=[5, 5, 70, 70, 120, 10, 180, 60, 240, 20], width=2, color=0x2196F3, rounded=True, parent=page0, )
- set_line_color(color, opa, part)
设置线的点列表。
UiFlow2 代码块:

MicroPython 代码块:
line_0.set_line_color(0xFF0000, 255, lv.PART.MAIN)
- set_style_line_width(width, part)
设置线的宽度。
UiFlow2 代码块:

MicroPython 代码块:
line_0.set_style_line_width(2, lv.PART.MAIN)
- set_flag(flag, value)
设置对象的标志。如果
value为 True,则添加标志;如果为 False,则移除标志。UiFlow2 代码块:

MicroPython 代码块:
button_0.set_flag(lv.obj.FLAG.HIDDEN, True)
- set_pos(x, y)
设置线的位置。
UiFlow2 代码块:

MicroPython 代码块:
line_0.set_pos(100, 100)
- align_to(obj, align, x, y)
将线对齐到另一个对象。
UiFlow2 代码块:

MicroPython 代码块:
line_0.align_to(page_0, lv.ALIGN.CENTER, 0, 0)




