Освой MicroPython играючи
/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000
Модуль m5ui содержит несколько удобных визуальных инструментов для отображения на экране.
from m5ui import *
Состав модуля:
Класс M5Button
Класс M5Circle
Класс M5Img
Класс M5Line
Класс M5Rect
Класс M5TextBox
Класс M5Title
Класс M5Triangle
Метод setScreenColor()
Описание отсутствует.
Класс M5Circle выводит круг в заданной части экрана. Все настройки можно указать в конструкторе класса. Затем можно менять через методы. Цвета: 0x000000 ~ 0xffffff. Можно не указывать последний аргумент для окантовки круга, в этом случае цвет окантовки будет равен цвету самого круга.
M5Circle(x, y, r, fillColor, [borderColor])
from m5ui import *
#from m5ui import M5Circle
setScreenColor(0xf50633)
circle = M5Circle(260, 85, 50, 0xe54f96, 0x2b1ecc)
circle.setBorderColor(0xefff96)
// Разные варианты установки позиции
circle.setPosition(x=0, y=0)
circle.setPosition(x=0)
circle.setPosition(y=0)
Класс M5Img позволяет отобразить картинку на экране. Поддерживаются форматы JPG и BMP.
M5Img(x, y, path, visibility)
from m5ui import *
setScreenColor(0xf50633)
image = M5Img(110, 70, "res/default.jpg", True)
// Меняем картинку
path = 'res/cat.jpg'
image.changeImg(path)
// Устанавливаем позицию разными способами
image.setPosition(x=0, y=0)
image.setPosition(y=0)
image.setPosition(x=0)
Класс M5Line рисует линию заданного цвета и размера.
from m5ui import *
line0 = M5Line(M5Line.PLINE, 100, 165, 170, 165, 0xFFFFFF)
Класс M5Rect выводит прямоугольник в заданной части экрана. Все настройки можно указать в конструкторе класса. Затем можно менять через методы. Цвета: 0x000000 ~ 0xffffff.
M5Rect(x, y, width, height, fillColor, borderColor)
from m5ui import *
setScreenColor(0xf50633)
rectangle = M5Rect(10, 30, 150, 100, 0x2bc766, 0xffffff)
// Меняем позицию разными способами.
rectangle.setPosition(0, 10)
rectangle.setPosition(x=10, y=10)
rectangle.setPosition(x=10)
rectangle.setPosition(y=10)
// Меняем размеры разными способами
rectangle.setSize(width=10, height=10)
rect.setSize(height=10)
rect.setSize(width=10)
Класс M5TextBox выводит текст в заданной части экрана, можно указать угол поворота (0 ~ 360), шрифт, цвет. Все настройки можно указать в конструкторе класса. Затем можно менять через методы.
M5TextBox(x, y, text, font, color, [rotate=0])
Шрифты определены в другом модуле, поэтому добавляем ещё один импорт.
from m5ui import *
from m5stack import *
setScreenColor(0xf50633)
label = M5TextBox(20, 15, "Кто сказал мяу?", lcd.FONT_UNICODE,0xf4e8e8, rotate=30)
label.setPosition(x=10, y=10)
label.setPosition(x=10)
label.setPosition(y=10)
Класс M5Title выводит текст в верхней части экрана. Все настройки можно указать в конструкторе класса. Затем можно менять через методы. Длина текста не должна превышать 50 символов. Цвета: 0x000000 ~ 0xffffff.
M5Title(title=text, fgcolor=color1, bgcolor=color2)
from m5ui import *
setScreenColor(0xf50633)
title = M5Title(title="Title", x=3 , fgcolor=0xFFFFFF, bgcolor=0x0000FF)
title.setTitle("Meow") // меняем заголовок
Класс M5Triangle рисует треугольник в заданном месте.
from m5ui import *
triangle = M5Triangle(123, 82, 92, 111, 152, 111, 0xFFFFFF, 0xFFFFFF)
Метод setScreenColor() устанавливает цвет дисплея. Цвета: 0x000000 ~ 0xffffff.
from m5ui import *
setScreenColor(0xf50633)