python为什么我的def不调用

2024-05-23 22:50:50 发布

您现在位置:Python中文网/ 问答频道 /正文

当启动“screen5-5.py”时,它会立即启动“blink\ cer”脚本。 并给出一个错误

我有两个Q

1如何在调用“def blink\u cer(cer\u name):”函数时启动它

2如何更正这个“(cer\u name).config(fg='yellow',bg='black')”

错误消息

Traceback (most recent call last):
  File "/home/pi/Desktop/screen5-5.py", line 239, in <module>
    sog_label.bind('<Button>', blink_cer(aws_cer))
  File "/home/pi/Desktop/screen5-5.py", line 33, in blink_cer
   (cer_name).config(fg='yellow', bg='black')
  File "/usr/lib/python3.5/tkinter/__init__.py", line 1342, in configure
   return self._configure('configure', cnf, kw)
  File "/usr/lib/python3.5/tkinter/__init__.py", line 1333, in _configure
   self.tk.call(_flatten((self._w, cmd)) + self._options(cnf))
  _tkinter.TclError: unknown option "-fg"

我的代码是这样的:

import time

try:
    import Tkinter as tk
    from Tkinter import *
except ImportError:
    import tkinter as tk
    from tkinter import *

nmea_data = '$HCHDT,49.9,T'

def blink_cer(cer_name):
   (cer_name).config(fg='yellow', bg='black')
   print ("WHY?")

def tick(time1=''):
time2 = time.strftime('%M:%S')

....

root = Tk()
root.title("Screen GUI")

....

clock_cer = Frame(info01_frame, width=310, height=135)
clock_cer.pack_propagate(0)
clock_cer.pack(side = LEFT)
clock_label = Label(clock_cer, anchor="e", text='59:59', font=Font104, 
padx="10", pady="14", bg='black', fg='#e065ff')
clock_label.pack(fill=BOTH, expand=1)

----

tick()       

root.mainloop()

Tags: nameinpyimportselftkinterconfigureline
1条回答
网友
1楼 · 发布于 2024-05-23 22:50:50

如果不知道你想用你的程序做什么,我不知道该怎么帮你

我设法让你的程序工作,我不得不删除Fontinfo01_frame让它工作,但当我调用blink_cer(clock_lable) the code runs prints为什么?`时,时钟数字变成黄色

答案:

1)您将从blink_cer(clock_label)<;或者任何你想改变的属性

2)我没有收到此消息,程序在删除其中一些项目后立即启动

import time

try:
    import Tkinter as tk
    from Tkinter import *
except ImportError:
    import tkinter as tk
    from tkinter import *

nmea_data = '$HCHDT,49.9,T'

def blink_cer(cer_name):
   (cer_name).config(fg='yellow', bg='black')
   print ("WHY?")

def tick(time1=''):
    time2 = time.strftime('%M:%S')

root = Tk()
root.title("Screen GUI")

clock_cer = Frame(width=310, height=135)
clock_cer.pack_propagate(0)
clock_cer.pack(side = LEFT)
clock_label = Label(clock_cer, anchor="e", text='59:59',
padx="10", pady="14", bg='black', fg='#e065ff')
clock_label.pack(fill=BOTH, expand=1)

tick() 
blink_cer(clock_label)      

root.mainloop()

希望这有帮助

相关问题 更多 >