Я пытаюсь сделать выбор для метки, добавляя метку, помещая поверх нее текстовый ввод и создавая он прозрачный. Также я ограничиваю ширину метки. Я попытался подогнать размер ввода текста под размер текстуры текста метки, но это не помогло. Я ожидал, что тексты из текстового ввода и метки будут в одном месте, поэтому выбор текстового ввода будет точным вокруг текста метки.
Результат:
[img]https://i .sstatic.net/fzZ2HfK6.png[/img]
Код:
Код: Выделить всё
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.textinput import TextInput
from kivy.uix.floatlayout import FloatLayout
class main(App):
def build(self):
f = FloatLayout()
# def changesmth(i):
# i._label.refresh()
# x,y = i._label.texture.size
# textinput2.size = (x,y)
# xp, yp = i.pos
# textinput2.pos=(xp-50,yp-10)
# textinput2.line_spacing = 5
label = Label(text="The quick brown fox jumps over the lazy dog",text_size = (400, None) ,markup=True,font_size="24", size=(400, 100),pos=(100,100), size_hint=(None, None))
textinput2 = TextInput(text="The quick brown fox jumps over the lazy dog", font_size="24",size=(400,100),pos=(100,100), size_hint=(None, None), readonly=True, foreground_color= (1,1,1,0.5), background_color = (1,0,0,0.1))
#changesmth(label)
f.add_widget(textinput2)
f.add_widget(label)
return f
main().run()
Подробнее здесь: https://stackoverflow.com/questions/784 ... s-in-label