我是 tkinter 的新手。有时,当我从 github 上读取代码时,它包含类似root.update().
当我搜索 tkinter 的文档时,我通常会找到每个小部件的方法列表,但找不到Tk()根对象本身。另外,通常当我为每个小部件设置配置时,它会自动更新视图。所以我有点困惑我应该什么时候使用root.update()?
所以,我试图创建一个元素周期表,它几乎是从外部有效完成的。但是,我不明白是否有任何方法可以以相同的方式填充各个按钮的颜色。有人可以帮我解决这个问题吗?
下面是我的代码:
from tkinter import *
period_1 = ['H','','','','','','','','','','','','','','','','','He']
period_2 = ['Li','Be','','','','','','','','','','','B','C','N','O','F','Ne']
period_3 = ['Na','Mg','','','','','','','','','','','Al','Si','P','S','Cl','Ar']
period_4 = """K Ca Sc Ti V Cr Mn Fe Co Ni Cu Zn Ga Ge As Se Br Kr""".split(" ")
period_5 = """Rb Sr Y Zr Nb Mo Tc Ru Rh Pd Ag Cd In Sn Sb Te I Xe""".split(" ")
period_6 = """Cs Ba * Hf Ta W Re Os Ir Pt Au Hg Tl Pb Bi Po At Rn""".split(" ")
period_6a = …Run Code Online (Sandbox Code Playgroud) 我想用 2 个选项卡在我的 GUI 中制作带有颜色的背景,我遇到了这个问题,也许有一些建议?
这是代码:
colors = ["Blue", "Gold", "Red"]
def radCall():
radSel=radVar.get()
if radSel == 0: tab1.configure(bg=colors[0])
elif radSel == 1: tab1.configure(bg=colors[1])
elif radSel == 2: tab1.configure(bg=colors[2])
radVar = tk.IntVar()
radVar.set(99)
for col in range(3):
curRad = tk.Radiobutton(mighty, text=colors[col], variable=radVar,
value=col, command=radCall)
curRad.grid(column=col, row=13, sticky=tk.W)
Run Code Online (Sandbox Code Playgroud)
这是问题所在:
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\HP\AppData\Local\Programs\Python\Python39\lib\tkinter\__init__.py", line 1892, in __call__ >C:/Users/HP/
return self.func(*args) top/Kuliah/Se
File "c:\Users\HP\Desktop\Kuliah\Semester 2\Information TechnologI_jualbeli_Day\Python\week5\Informasi Jual Beli\GUI_jualbeli_Dazan.py", line 277, in radCall
if radSel == …Run Code Online (Sandbox Code Playgroud) 我正在研究如何使用 Python 制作矩阵numpy并让用户为其输入值。
我遇到了一个使用特定代码的视频,在工作和理解它之后,我写了一些类似的东西,我得到了相同的输出。
我想知道这两种代码之间有什么区别,哪个更好、更智能、更易于使用。
这里的代码都创建了一个 3x3 矩阵
视频中的代码:
import numpy as np
r = 3
c = 3
a = np.zeros((r, c), dtype=np.int64)
for i in range(len(a)):
for j in range(len(a[i])):
num = int(input('Enter the entries: '))
a[i][j] = num
print(a)
Run Code Online (Sandbox Code Playgroud)
我的代码:
import numpy as np
r = 3
c = 3
a = np.zeros((r,c),dtype=np.int64)
for i in range(r):
for j in range(c):
num = int(input('Enter the entries: '))
a[i][j] = num
print(a)
Run Code Online (Sandbox Code Playgroud) 是否可以通过按下按钮和事件来运行函数?当我尝试通过按下按钮来运行此功能时,可以理解的是,它给出了错误
类型错误:listFiller() 缺少 1 个必需的位置参数:“事件”。
找不到类似的问题,但也许这只是我缺乏编程知识。
代码:
class MyClass:
def __init__(self, master):
self.myButton = tk.Button(master, text='ok', command=self.listFiller)
self.myButton.pack()
self.myEntry = tk.Entry(master)
self.myEntry.bind("<Return>",self.listFiller)
self.myEntry.pack()
def listFiller(self, event):
data = self.myEntry.get()
print(data)
Run Code Online (Sandbox Code Playgroud) 我对 python 编程很陌生,我试图创建一个倒数计时器。我为计时器写下了以下代码,但它不起作用。你能帮忙找出错误在哪里吗?(我在这个网站上做了一些研究,发现了一些与计时器有关的问题。事实上,大部分代码都是根据另一个答案编写的,但我对其进行了一些更改,因为该代码用于时钟,我正在尝试做一个计时器。)
from tkinter import *
from tkinter import messagebox
class alarmclock():
def __init__(self):
self.alarm = Tk()
self.l0 = Label(self.alarm, text = '----------- Alarm clock 1 -----------')
self.l1 = Label(self.alarm, text = 'Please type in the time:')
self.e0 = Entry(self.alarm)
self.l2 = Label(self.alarm)
self.b0 = Button(self.alarm, text = 'Start countdown', command = lambda: self.timer)
self.l0.grid(row = 0, column = 0, columnspan = 2)
self.l1.grid(row = 1, column = 0, padx = 10, pady =5)
self.e0.grid(row = 1, column = …Run Code Online (Sandbox Code Playgroud)