python - Kivy [按下按钮时冻结]
问题描述
所以我正在尝试学习简单的 Kivy GUI 来使用我之前已经制作的课程发送短信,除了窗口冻结几秒钟外,它可以工作,关于如何使按钮按下平滑而不冻结的任何提示?请记住,下面的代码只是应用程序的开始,只是为了确保它确实有效。提前致谢。
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput
from kivy.uix.button import Button
from kivy.uix.widget import Widget
from kivy.uix.progressbar import ProgressBar
from kivy.config import Config
from sms_funksjon import SendSMS
Config.set('graphics', 'resizable', '0') # 0 being off 1 being on as in true/false
Config.set('graphics', 'width', '500')
Config.set('graphics', 'height', '200')
class MyGrid(GridLayout):
def __init__(self, **kwargs):
super(MyGrid, self).__init__(**kwargs)
self.cols = 1
self.inside = GridLayout()
self.inside.cols = 2
self.inside.add_widget(Label(text="Mobil nummer: "), pow(50, 50))
self.mobile_number = TextInput(multiline=False)
self.inside.add_widget(self.mobile_number)
self.inside.add_widget(Label(text="Tekst: "))
self.tekst = TextInput(multiline=False)
self.inside.add_widget(self.tekst)
self.add_widget(self.inside)
self.pb = ProgressBar(max=100)
self.pb.value = 0
self.add_widget(self.pb)
self.submit = Button(text="Send", font_size=40)
self.submit.bind(on_press=self.pressed)
self.add_widget(self.submit)
def pressed(self, instance):
nummer = str(self.mobile_number.text)
tekst = str(self.tekst.text)
SendSMS(nummer, tekst)
self.clear_everything()
def clear_everything(self):
self.mobile_number.text = ""
self.tekst.text = ""
class Main(App):
def build(self):
return MyGrid()
Main().run()
解决方案
推荐阅读
- node.js - 如何创建用于发布到 npm 的 ReactJS 包?
- python-3.x - UnicodeDecodeError:“utf-8”编解码器无法解码位置 15 中的字节 0x96:无效的起始字节
- vue.js - Vue - 如何在 Vue 组件中呈现 HTML
- java - 接口中的默认方法 - Java
- associations - cakephp 3 - 不可能用空列表生成条件
- typescript - Loopback4 多对多关系,但没有额外的 id 字段作为关系表中的主键
- linux - 在shell脚本中组合匹配的字符串和总和列
- google-apps-script - 我的脚本的项目属性中列出了额外的范围
- customization - 如何将我自己的 CSS 添加到具有现有线框主题的 Sitecore SXA 自定义组件?
- batch-file - Windows批处理文件中变量中的第一个大写字符