У меня есть класс, у которого есть текстовое поле для генерации некоторого двоичного числа и текстовое поле для ответа пользователя в декабре, а также у меня есть всплывающее окно, чтобы показать, как считать ответ на запись.когда usr нажимает на кнопку «начать тест», он генерирует номер бина, а когда usr вызывает всплывающий аргумент функции, получается «» текст, без номеров бинов
KV.file
TestTwo класс:
MDRectangleFlatButton:
text: "Start test"
pos_hint: {'center_x': 0.5, 'center_y': 0.01}
on_press:
generate_2c.text = str(root.generate_number())
root.set_timer(time_test2)
Там генерируется разряд бин.
это всплывающее окно:
<show_answ1>:
test2: TestTwo()
title: 'Перевод'
size_hint: None, None
size: 400,300
TextInput:
text:root.show_answ(str(root.test2.ids.generate_10c.text))
Py.file
TestTwo class
def generate_number(self,n=''):
gen_n=random.randint(0,127)
while gen_n > 0:
y = str(gen_n % 2)
n = y + n
gen_n = int(gen_n / 2)
return n
Всплывающий класс:
def show_answ(self,answ):
dlina = len(answ)
dig_dec = 0
a=""
for i in range(0, dlina):
b = "%d + %d * 2^ %d\n" % (dig_dec, int(answ[i]), dlina - i - 1)
dig_dec = chislo_dec + int(answ[i]) * (2 ** (dlina - i - 1))
a=a+b
a=a+"Result: %s" %dig_dec
return a
run popup
if
<show_answ1>:
test2: TestTwo()
title: 'Перевод'
size_hint: None, None
size: 400,300
TextInput:
text:root.show_answ(str(10))
всплывающий текст:
0 + 1 * 2 ^ 1
2 + 0 * 2 ^ 0
Результат: 2