Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Tkinter循环的开始和停止按钮。我需要一个循环的启动和停止按钮_Python_Loops_Button_Tkinter - Fatal编程技术网

Python Tkinter循环的开始和停止按钮。我需要一个循环的启动和停止按钮

Python Tkinter循环的开始和停止按钮。我需要一个循环的启动和停止按钮,python,loops,button,tkinter,Python,Loops,Button,Tkinter,这是我想要的代码,4个LED在彼此之后打开然后关闭,但它们可以通过GUI的启动和停止按钮关闭和打开。我是python和编码的新手。我环顾四周,似乎找不到解决问题的办法 from Tkinter import * import RPi.GPIO as GPIO import sys import time ##Setup #GPIO GPIO.setmode(GPIO.BOARD) #Window led = Tk() led.title("LED Controller") led.geomet

这是我想要的代码,4个LED在彼此之后打开然后关闭,但它们可以通过GUI的启动和停止按钮关闭和打开。我是python和编码的新手。我环顾四周,似乎找不到解决问题的办法

from Tkinter import *
import RPi.GPIO as GPIO
import sys
import time

##Setup
#GPIO
GPIO.setmode(GPIO.BOARD)
#Window
led = Tk()
led.title("LED Controller")
led.geometry("345x200+385+350")
#Title
title = Label(text="My LED Controller",fg="purple")
title.pack()

#Pin 7 = Front Left
GPIO.setup(7,GPIO.OUT)
GPIO.output(7, GPIO.LOW)

#Pin 11 = Front Right
GPIO.setup(11,GPIO.OUT)
GPIO.output(11, GPIO.LOW)

#Pin 13 = Back Left
GPIO.setup(13,GPIO.OUT)
GPIO.output(13, GPIO.LOW)

#Pin 15 = Back Right
GPIO.setup(15,GPIO.OUT)
GPIO.output(15, GPIO.LOW)

###Flash
##Define Loop/Flashing
#Flash
    def flash_1():
    while True: 
            if flashButton_1:
                GPIO.output(7, GPIO.HIGH)
                print "Pin 7 High"
                time.sleep(1)
                GPIO.output(7, GPIO.LOW)
                print "Pin 7 Low"
                GPIO.output(11, GPIO.HIGH)
                print "Pin 11 High"
                time.sleep(1)
                GPIO.output(11, GPIO.LOW)
                print "Pin 11 Low"
                GPIO.output(13, GPIO.HIGH)
                print "Pin 13 High"
                time.sleep(1)
                GPIO.output(13, GPIO.LOW)
                print "Pin 13 Low"
                GPIO.output(15, GPIO.HIGH)
                print "Pin 15 High"
                time.sleep(1)
                GPIO.output(15, GPIO.LOW)
                print "Pin 15 Low"

###Pack/Placement of buttons
##Flash
#Flash 1 Start
flashButton_1 = Button(led, text="Flash On", fg="red", command=flash_1)
flashButton_1.place(x=5,y=100)

#Loop Command
led.mainloop()

#Cleanup Command
GPIO.cleanup()

flash_1
是一项永不停止的功能。因此,它从不将程序流控件返回到主事件循环。如果没有事件循环,GUI不会刷新和冻结。这似乎是一个类似的问题: