fanshinee
fanshinee
采纳率66.7%
2018-07-03 01:45 阅读 3.8k

如何在选择一个选项后,有选择的弹出输入框

5

各位朋友们,新手Python,遇到问题,想请求各位帮忙,感谢!
问题描述:我写了一段代码,如下图
from tkinter import *
root = Tk()
root.title("元素周期表")
def cal():
master = Tk()
v1=StringVar()
v2=StringVar()
v3=StringVar()
frame = Frame(master)
frame.pack(padx=10,pady=10)
Entry(frame,width=10,textvariable=v1).grid(row = 0, column = 1)
Entry(frame,width=10,textvariable=v2).grid(row = 1, column = 1)
Entry(frame,width=10,textvariable=v3).grid(row = 2, column = 1)
Button(frame,text="数1").grid(row=0,column=0)
Button(frame,text="数2").grid(row=1,column=0)
Button(frame,text="数3").grid(row=2,column=0)

Button(root,text="选择",command=cal).grid(row=2,column=1)
Button(root,text="输入一个数",command=cal).grid(row=2,column=1)
Button(root,text="输入另一个数",command=cal).grid(row=2,column=2)

mainloop()

实现的时候会出现如下图所示的:
然后会在点击任意一个按钮的时候出现第二个图
想要的结果:想要实现,点击哪个出来哪个,如点击输入一个数,只是输入数1(数1和输入一个数对应),其他的两个数2数3不显示
或者各位鱼友有什么其他好的组合也特别感谢告诉我,实现的目标就是执行出来很多按钮可以选择,然后选择的按钮会编程有输入框的东西;
另外,还想让数1和数2通过计算得到数3,定义了函数,但是总是报错,不知道为什么,感谢各位图片说明图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    caozhy 从今以后生命中的每一秒都属于我爱的人 2018-07-03 02:04

    图片说明

    点赞 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2018-07-03 02:03
     from tkinter import *
    
    root = Tk()
    root.title("元素周期表")
    
    
    def cal(type):
        master = Tk()
        v1 = StringVar()
        v2 = StringVar()
        v3 = StringVar()
        frame = Frame(master)
        frame.pack(padx=10, pady=10)
    
        Entry(frame, width=10, textvariable=v1).grid(row=0, column=1)
        Button(frame, text="数1").grid(row=0, column=0)
    
        if (type == 1): return;
        Entry(frame, width=10, textvariable=v2).grid(row=1, column=1)
        Button(frame, text="数2").grid(row=1, column=0)
    
        if (type == 2): return;
        Entry(frame, width=10, textvariable=v3).grid(row=2, column=1)
        Button(frame, text="数3").grid(row=2, column=0)
    
    
    Button(root, text="选择", command=cal).grid(row=2, column=1)
    Button(root, text="输入一个数", command=lambda :cal(1)).grid(row=2, column=1)
    Button(root, text="输入另一个数", command=lambda :cal(2)).grid(row=2, column=2)
    
    mainloop()
    
    点赞 评论 复制链接分享
  • fanshinee fanshinee 2018-07-05 03:22

    图片说明
    希望完成的是点击增加,能够实现增加一行(第四组数据+两个输入框),这些框可以自动向下排列;另外,这些框中数据可以运算,如第一行的xy相乘然后加上第二行的xy乘积,一直到最后一行;
    点击清空,可以去除一行
    点击确定则进行输出结果,放在最后一行

    点赞 评论 复制链接分享

相关推荐