鱼C论坛

 找回密码
 立即注册
查看: 443|回复: 2

[已解决]Tkinter 显示6个按钮

[复制链接]
发表于 2024-5-2 15:13:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

from tkinter import *
root=Tk()
def h(a,b,c,d,e,f) :
    for i in range (6):
        Button(root,text=h(i)).pack()
h("flat","groove","ridge","sunken","raised","solid")

哪 里 的 错 误  ?
最佳答案
2024-5-2 17:49:19
from tkinter import *

root=Tk()
def h(*name) :
    for i in name:
        Button(root,text=i).pack()

h("flat","groove","ridge","sunken","raised","solid")
以上是修改后的代码
Button(root,text=h(i)).pack()这一行调用 h(i) 很明显就不对,不符合函数的基本语法
对于多个参数,建议用不定参数来传入
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-5-2 15:13:34 | 显示全部楼层
代码中存在几个错误。首先,定义函数时的参数应该是字符串类型,而不是变量。其次,在循环中创建按钮时,应该使用传入的参数作为按钮的文本,而不是再次调用函数。最后,函数应该在按钮创建之前定义。

以下是修改后的代码:
from tkinter import *

root = Tk()

def h(btn_text):
    Button(root, text=btn_text).pack()

button_texts = ["flat", "groove", "ridge", "sunken", "raised", "solid"]

for text in button_texts:
    h(text)

root.mainloop()

运行这段代码后,将会在Tkinter窗口中显示6个按钮,按钮的文本分别为"flat"、"groove"、"ridge"、"sunken"、"raised"和"solid"。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-2 17:49:19 | 显示全部楼层    本楼为最佳答案   
from tkinter import *

root=Tk()
def h(*name) :
    for i in name:
        Button(root,text=i).pack()

h("flat","groove","ridge","sunken","raised","solid")
以上是修改后的代码
Button(root,text=h(i)).pack()这一行调用 h(i) 很明显就不对,不符合函数的基本语法
对于多个参数,建议用不定参数来传入
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 04:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表