首页 > 解决方案 > 我无法解决 tkinter 中的条目浮动并使用它

问题描述

如果有人能帮助我完成在 dxf 中生成绘图的任务,我会很高兴。即使没有 gui 一切都很好,我很难从 tkinter 输入字段中获取条目。我正在使用 a = self.a.get() 但似乎它没有从条目中获取数字。这是我所做的:

from tkinter import *
import dxfwrite
from dxfwrite import DXFEngine as dxf

class GUI(Frame):

  def __init__(self, master=None):
    Frame.__init__(self, master)
    self.grid()
    self.fnameLabel = Label(master, text="height: ")
    self.fnameLabel.grid(row=2, column=0, sticky=W)
    self.a = DoubleVar()
    self.a = Entry(master)
    self.a.grid(row=2, column=1, sticky=W)
    self.submitButton = Button(master, command=self.buttonClick, 
    text="generate drawing")
    self.submitButton.grid()

  def buttonClick(self):
    a = self.a.get()
    drawing = dxf.drawing('test111.dxf')
    drawing.add_layer('lines')

    a = float()
    b = float()
    b = 0.05
    while True:
      drawing.add(dxf.line((0.03, b), (a, b), color=40, layer='lines'))
      b += 0.15
      if b >= a + 1:
        break

    drawing.save()

if __name__ == "__main__":  
  guiFrame = GUI()
  guiFrame.mainloop()

标签: pythontkinter

解决方案


当您将字符串转换为浮点数时,您必须告诉函数要转换什么。如果您不提供参数,float 函数将返回 0.0。

a = float()  # Returns 0.0
a = float(a) # Returns the float representation of a

推荐阅读