Делаю менеджер паролей для личного пользования и решил добавить генератор случайного пароля, когда ты нажимаешь на кнопку
Сгенерировать Пароль, TextInput с паролем должен автоматически обновляться и принимать в себя сгенерированый пароль.
Код:(основная инфа закоментирова) from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
from kivy.uix.textinput import TextInput
from kivy.uix.label import Label
from kivy.config import Config
import string
from random import *
Config.set("graphics", "resizable", "0")
Config.set("graphics", "width", "700")
Config.set("graphics", "height", "800")
print("--------------")
class PasswordManagerApp(App):
def open(self, args):
pass
def generate(self, args):
self.password = "".join(choice(self.password_string) for x in range(randint(8, 12))) #генерация пароля
print(self.password)
def add(self, args):
pass
def build(self):
self.password_string = string.ascii_letters + string.digits
self.resource = ""
self.login = ""
self.password = ""
root = BoxLayout(orientation='vertical', padding = 5)
top = GridLayout(cols = 6, padding = 5, size_hint = [1, .1])
top.add_widget(Label(text='Ресурс'))
top.add_widget(TextInput(text=''))
top.add_widget(Label(text='Логин'))
top.add_widget(TextInput(text=''))
top.add_widget(Label(text='Пароль'))
top.add_widget(TextInput(text=self.password)) #должно автоматически обновляться при нажатии на кнопку сгенерировать пароль
root.add_widget(top)
top_func = GridLayout(cols = 6, padding = 5, size_hint = [1, .1])
top_func.add_widget(Button(text = 'Открыть файл', on_press = self.open))
top_func.add_widget(Button(text = 'Сгенерировать пароль', on_press = self.generate)) #вот сама кнопка
top_func.add_widget(Button(text = 'Добавить аккаунт', on_press = self.add))
root.add_widget(top_func)
output = TextInput(size_hint = [1, .8])
root.add_widget(output)
return root
if __name__ == '__main__':
PasswordManagerApp().run()