7x4 网格显示 1 个按钮 28 次,而不是显示 28 个不同的按钮为什么?

如何解决7x4 网格显示 1 个按钮 28 次,而不是显示 28 个不同的按钮为什么?

我想在 7x4 自动调整大小的网格中显示下面的 28 个按钮。就目前而言,相等按钮显示了 28 次。我需要在 7x4 网格中显示所有 28 个不同的按钮。我用 row_index 和 col_index 变量配置了所有 28 个不同的按钮,但它仍然无法正常工作。如果您能帮助我找到正确的方向,我将不胜感激。

...

enter code here

类计算器(ttk.Frame) def init(自我): 根 = Tk() root.title("TK 的计算器") root.geometry("700x500")

    Grid.rowconfigure(root,weight=1)
    Grid.columnconfigure(root,weight=1)

    root.resizable(True,True)
    
    frame1 = Frame(root,bg="#80c1ff",bd=5)
    frame1.grid(row=0,column=0,sticky="nsew")

    for row_index in range(7):
        Grid.rowconfigure(frame1,row_index,weight=1)
        
    for col_index in range(4):
        Grid.columnconfigure(frame1,col_index,weight=1)
        
        buttonMC = Button(frame1,text="MC",height=3,width=5,command=MC)
        buttonMC.grid(row=row_index,column=col_index,sticky="nsew")
        buttonMC.configure(width=7,font=("Verdana",10,"bold"),fg="Navy")

        MRButton = Button(frame1,text="MR",command=MR)
        MRButton.grid(row=row_index,sticky="nsew")
        MRButton.configure(width=7,fg="Navy")

        MPlusButton = Button(frame1,text="M+",command=MPlus)
        MPlusButton.grid(row=row_index,sticky="nsew")
        MPlusButton.configure(width=7,fg="Navy")

        percentButton = Button(frame1,text="%",command=percent)
        percentButton.grid(row=row_index,sticky="nsew")
        percentButton.configure(width=7,fg="Navy")

        buttonModulo = Button(frame1,text="Mod",command=modulo)
        buttonModulo.grid(row=row_index,sticky="nsew")
        buttonModulo.configure(width=7,fg="Navy")

        buttonSqRoot = Button(frame1,text="√(x)",command=squareRootOfx)
        buttonSqRoot.grid(row=row_index,sticky="nsew")
        buttonSqRoot.configure(width=7,fg="Navy")

        button2ndPower = Button(frame1,text="x²",command=powerOf2)
        button2ndPower.grid(row=row_index,sticky="nsew")
        button2ndPower.configure(width=7,fg="Navy")

        buttonOneOverX = Button(frame1,text="1/x",command=oneOverX)
        buttonOneOverX.grid(row=row_index,sticky="nsew")
        buttonOneOverX.configure(width=7,fg="Navy")

        buttonCE = Button(frame1,text="CE",command=clearEntry)
        buttonCE.grid(row=row_index,sticky="nsew")
        buttonCE.configure(width=7,fg="Navy")

        buttonClear = Button(frame1,text="C",command=clear)
        buttonClear.grid(row=row_index,sticky="nsew")
        buttonClear.configure(width=7,fg="Navy")

        buttonDelete = Button(frame1,text="del",command=delete)
        buttonDelete.grid(row=row_index,sticky="nsew")
        buttonDelete.configure(width=7,fg="Navy")

        buttonDivide = Button(frame1,text="/",command=divide)
        buttonDivide.grid(row=row_index,sticky="nsew")
        buttonDivide.configure(width=7,fg="Navy")

        button7 = Button(frame1,text="7",command=lambda: buttonClick(7))
        button7.grid(row=row_index,sticky="nsew")
        button7.configure(width=7,fg="Navy")

        button8 = Button(frame1,text="8",command=lambda: buttonClick(8))
        button8.grid(row=row_index,sticky="nsew")
        button8.configure(width=7,fg="Navy")

        button9 = Button(frame1,text="9",command=lambda: buttonClick(9))
        button9.grid(row=row_index,sticky="nsew")
        button9.configure(width=7,fg="Navy")
        

        buttonMultiply = Button(frame1,text="x",command=multiply)
        buttonMultiply.grid(row=row_index,sticky="nsew")
        buttonMultiply.configure(width=7,fg="Navy")

        button4 = Button(frame1,text="4",command=lambda: buttonClick(4))
        button4.grid(row=row_index,sticky="nsew")
        button4.configure(width=7,fg="Navy")

        button5 = Button(frame1,text="5",command=lambda: buttonClick(5))
        button5.grid(row=row_index,sticky="nsew")
        button5.configure(width=7,fg="Navy")

        button6 = Button(frame1,text="6",command=lambda: buttonClick(6))
        button6.grid(row=row_index,sticky="nsew")
        button6.configure(width=7,fg="Navy")

        buttonMinus = Button(frame1,text="-",command=subtract)
        buttonMinus.grid(row=row_index,sticky="nsew")
        buttonMinus.configure(width=7,fg="Navy")

        button1 = Button(frame1,text="1",command=lambda: buttonClick(1))
        button1.grid(row=row_index,sticky="nsew")
        button1.configure(width=7,fg="Navy")

        button2 = Button(frame1,text="2",command=lambda: buttonClick(2))
        button2.grid(row=row_index,sticky="nsew")
        button2.configure(width=7,fg="Navy")

        button3 = Button(frame1,text="3",command=lambda: buttonClick(3))
        button3.grid(row=row_index,sticky="nsew")
        button3.configure(width=7,fg="Navy")

        buttonAdd = Button(frame1,text="+",command=add)
        buttonAdd.grid(row=row_index,sticky="nsew")
        buttonAdd.configure(width=7,fg="Navy")
        
        buttonPlusMinus = Button(frame1,text="+/-",command=plusMinus)
        buttonPlusMinus.grid(row=row_index,sticky="nsew")
        buttonPlusMinus.configure(width=7,fg="Navy")

        buttonZero = Button(frame1,text="0",command=lambda: buttonClick(0))
        buttonZero.grid(row=row_index,sticky="nsew")
        buttonZero.configure(width=7,fg="Navy")

        buttonDecimal = Button(frame1,text=".",command=decimal)
        buttonDecimal.grid(row=row_index,sticky="nsew")
        buttonDecimal.configure(width=7,fg="Navy")

        buttonEquals = Button(frame1,text="=",command=equals)
        buttonEquals.grid(row=row_index,sticky="nsew")
        buttonEquals.configure(width=7,fg="Navy")

    frame2 = Frame(root,bg="lightgrey",bd=5)
    frame2.grid(row=0,column=1,sticky="nsew")

    historyButton = Button(frame2,text="Clear History",fg="Navy",command=clearhistory)
    historyButton.configure(font=("Verdana",12,fg="Navy")
    historyButton.place(x=5,y=40)

    memoryButton = Button(frame2,text="Memory",fg="navy",command=memory)
    memoryButton.configure(font=("Verdana",fg="Navy")
    memoryButton.place(x=135,y=40)

    self.result = Entry(frame2,width=24,borderwidth=3)
    self.result.configure(font=("Verdana",14))
    self.result.grid(row=0,pady=5)

    root.mainloop()

计算器() ...

解决方法

您将所有控件置于 row=row_index,column=col_index。到运行时,row_index 为 7,col_index 为 4。您需要对所有这些按钮的位置进行硬编码,如 row_index=0,col_index=3。然后它会起作用。我现在正在看:

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams['font.sans-serif'] = ['SimHei'] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -> systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping("/hires") public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate<String
使用vite构建项目报错 C:\Users\ychen\work>npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-
参考1 参考2 解决方案 # 点击安装源 协议选择 http:// 路径填写 mirrors.aliyun.com/centos/8.3.2011/BaseOS/x86_64/os URL类型 软件库URL 其他路径 # 版本 7 mirrors.aliyun.com/centos/7/os/x86
报错1 [root@slave1 data_mocker]# kafka-console-consumer.sh --bootstrap-server slave1:9092 --topic topic_db [2023-12-19 18:31:12,770] WARN [Consumer clie
错误1 # 重写数据 hive (edu)> insert overwrite table dwd_trade_cart_add_inc > select data.id, > data.user_id, > data.course_id, > date_format(
错误1 hive (edu)> insert into huanhuan values(1,'haoge'); Query ID = root_20240110071417_fe1517ad-3607-41f4-bdcf-d00b98ac443e Total jobs = 1
报错1:执行到如下就不执行了,没有显示Successfully registered new MBean. [root@slave1 bin]# /usr/local/software/flume-1.9.0/bin/flume-ng agent -n a1 -c /usr/local/softwa
虚拟及没有启动任何服务器查看jps会显示jps,如果没有显示任何东西 [root@slave2 ~]# jps 9647 Jps 解决方案 # 进入/tmp查看 [root@slave1 dfs]# cd /tmp [root@slave1 tmp]# ll 总用量 48 drwxr-xr-x. 2
报错1 hive> show databases; OK Failed with exception java.io.IOException:java.lang.RuntimeException: Error in configuring object Time taken: 0.474 se
报错1 [root@localhost ~]# vim -bash: vim: 未找到命令 安装vim yum -y install vim* # 查看是否安装成功 [root@hadoop01 hadoop]# rpm -qa |grep vim vim-X11-7.4.629-8.el7_9.x
修改hadoop配置 vi /usr/local/software/hadoop-2.9.2/etc/hadoop/yarn-site.xml # 添加如下 <configuration> <property> <name>yarn.nodemanager.res