python - 我只想在kivy中依次单击两个按钮时打印文本
问题描述
def build(self):
layout=FloatLayout()
# use a (r, g, b, a) tuple
btn1 = Button(text ="Push Me !",
background_color =(1, 1, 1,1)
size =(32, 32),
size_hint =(.2, .2),
pos =(300, 250))
btn2 = Button(text ="click Me !",
background_color =(1, 0, 1,1)
size =(32, 32),
size_hint =(.2, .2),
pos =(100, 250))
layout.add_widget(btn1)
layout.add_widget(btn2)
# I need a function here to print a text only if the two buttons are clicked one after another.
return layout
解决方案
例如,您可以在单击第一个按钮时更新变量值。然后,当单击第二个按钮时,您检查此变量的值,如果它具有正确的值,则打印文本,当然,您重置变量。
这是一个简单的代码:
var_click = 0
def click1(*events):
global var_click
var_click = 1
def click2(*events):
global var_click
if var_click == 1:
var_click = 0
print("Some text")
然后你只需将这两个函数分别关联到command
参数 ofbtn1
和btn2
。
推荐阅读
- python-3.x - Python Matplotlib Wordcloud 显示空白
- spring - 麋鹿连接失败
- node.js - 我们可以在 mongoose virtuals 中使用 Query 吗?
- react-native - 华为设备在 react-native-share 中不返回承诺成功或错误
- python - 如何将两个 UUIDv4 字符串组合成一个唯一的 UUIDv4 字符串
- linux - 如何为 docker rootless 安装 uidmap 包
- javascript - 如何在水平滚动上触发交叉点观察者?
- python - 在以多个数据框列为条件的数据框中添加一列
- python - 如何从张量中获取前 3 个最大数字
- python - 如何知道一个进程当前是否被用户使用