我在登錄屏幕上添加了一個(gè)復(fù)選框,用于保存用戶名和密碼信息,這樣用戶就不必每次都輸入它們。我考慮過(guò)創(chuàng)建一個(gè)文本文件來(lái)存儲(chǔ)這些信息,但也許有更好的方法。我無(wú)法正確保存它;這就是我到目前為止所擁有的。在我的類的 init 方法中,我正在檢查是否有包含信息的文本文件。如果是這樣,我想提取用戶名和密碼來(lái)填寫(xiě)我屏幕上的 TextInputs。如果沒(méi)有,我將它們留空,讓用戶填寫(xiě)兩個(gè) TextInput。Textinputs 在我的下一個(gè)方法 add_user() 中處理。我得到這個(gè)錯(cuò)誤:AttributeError: 'super' object has no attribute '__getattr__'。我還沒(méi)有弄清楚復(fù)選框的行為,因?yàn)槲乙呀?jīng)出錯(cuò)了。有人有想法嗎?try.pyclass SigninWindows(Screen): def __init__(self, **kwargs): super().__init__(**kwargs) if os.path.isfile('prev_details.txt'): with open('prev_details.txt', 'r') as f: d = f.read().split(',') self.ids.username_field.text = d[0] self.ids.pwd_field.text = d[1] else: self.ids.username_field.text = '' self.ids.pwd_field.text = '' def add_user(self): uname = self.ids.username_field.text passw = self.ids.pwd_field.text info = self.ids.info table_name = uname.replace('@', '_').replace('.', '_')try.kv<SigninWindows>: id: signin_page name: "signin_page" orientation: "vertical" spacing: 10 space_x: self.size[0]/5.5 canvas.before: Color: rgba: (0,0,0,1) Rectangle: size: self.size pos: self.pos BoxLayout: id: data_signin orientation: 'vertical' size_hint_x: 1 BoxLayout: Image: id: ds_im orientation: 'vertical' source: 'ds.png' allow_stretch: True BoxLayout: id: validate_info orientation: "vertical" size_hint: 1,0.8 padding: 80, 10 Label: id: info text: '' markup: True
在 Python/Kivy 應(yīng)用程序中保存用戶名和密碼
墨色風(fēng)雨
2022-10-11 21:08:57