Я хочу построить пользовательский индикатор выполнения с заштрихованной линией, заполняющей прямоугольник. В конце она должна выглядеть примерно так (цвета могут отличаться): Заштрихованные линии должны иметь угол 45 градусов, и можно указать толщину линий в штриховке.
Я использую python 3.7.3 и kivy 1.10.1
Мой код пока только дает мне прямоугольник заднего фона с границей.
Но на прямоугольнике, который должен заполняться слева направо, штриховка отсутствует, и я понятия не имею, как это сделать.
Я пытался это с png-файлом в качестве текстуры, но результаты были плохими (файл pb_filled.png). Изменение размера не работает должным образом.
Я бы предпочел решение, которое может быть сделано только в кв. Можно ли использовать линии для штриховки? Возможно, позже я захочу оживить линии, движущиеся справа налево. Пожалуйста, помогите мне сделать штриховку на прямоугольнике.
<CustomProgressBar@ProgressBar>:
height: '100'
size_hint: (1, None)
canvas:
BorderImage:
border: (3, 3, 3, 3)
pos: self.x, self.y
size: self.width, 75
source: 'pb_normal.png'
Color:
rgb: 123/255,123/255,54/255,1
Rectangle:
pos: self.x, self.y
size: self.width * (self.value / float(self.max)) if self.max else 0, 75
#source: 'pb_filled.png'