首页 > 解决方案 > 如何将计算器 GUI 连接到图形 GUI?

问题描述

我想将计算器 gui 与函数图形 gui 连接起来。例如,如果我在计算器上单击“sinx”,则图形(正弦函数)将出现在图形 gui 上。我该怎么办?

  1. 计算器 GUI 代码

    from tkinter import * window = Tk() window.title("해대비주얼") '' top_row = Frame(window) top_row.grid(row=0, column=0, columnspan=2,sticky=N) display = Entry( top_row, width=35, bg="淡蓝色") display.grid()

    num_pad = Frame(window)
    num_pad.grid(row=1, column=0, sticky=W)
    num_pad_list = [
        '7','8','9',
        '4','5','6',
        '1','2','3',
        '0','.','=']
    r = 0
    c = 0
    for btn_text in num_pad_list:
        def cmd(x=btn_text):
            click(x)
        Button(num_pad, text=btn_text, width=5, command=cmd).grid(row=r, column=c)
        c = c + 1
        if c > 2:
            c = 0
            r = r + 1
    
    
    
    
    operator = Frame(window)
    operator.grid(row=1, column=1, sticky=E)
    operator_list = [
        '*','/',
        '+','-',
        '(',')',
        '^','C']
    r = 0
    c = 0
    for btn_text in operator_list:
        def cmd(x=btn_text):
            click(x)
        Button(operator, text=btn_text, width=5, command=cmd).grid(row=r, column=c)
        c = c + 1
        if c > 1:
            c = 0
            r = r + 1
    
    
    
    etc = Frame(window)
    etc.grid(row=50, column=0, sticky=S)
    etc_list = ['pi','sin','cos','x']
    r = 0
    c = 0
    for btn_text in etc_list:
        def cmd(x=btn_text):
            click(x)
        Button(etc, text=btn_text, width=5, command=cmd).grid(row=r, column=c)
        r = 0
        c = c + 1
    
    def click(key):
        if key == "=":
            try:
                if "^" in display.get():
                    n = display.get().split(sep="^")
                    result = str(float(n[0]) ** float(n[1]))
                    display.insert(END, " = " + result)
                else:
                    result = str(eval(display.get()))[0:10]
                    display.insert(END, " = " + result)
            except:
                display.insert(END, " --> Error!")
        elif key == "C":
            display.delete(0, END)
        elif key == etc_list[0]:
            import math
            display.insert(END, math.pi)
        else:
            display.insert(END, key)
    
    
    window.mainloop()
    

2.图形GUI代码

 from tkinter import *
    graph = Tk()
    graph.title("해대비주얼 그래프")
    ''
    graph.geometry("1000x700")
    ''

标签: pythongraphcalculator

解决方案


推荐阅读