- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
使用送纸器按钮时,F 的脚本会在“主”框出现之前完全运行到打印,然后不会对“主”框的输入使用react。这导致输出为 0.0 kW,因为输入是一个长小数,后跟一个 L,当用户输入的是 8777
我已经在互联网上漫游了大约一天,但没有找到任何东西。我对 TK 很陌生,但一直在努力学习它。
def F():
master = tk.Tk()
tk.Label(master, text = 'Feeder Number: ').grid(row=0)
entry1 = tk.Entry(master)
entry1.grid(row=0, column=1)
button2 = tk.Button(master,
text=' Confirm',
command=entry1.get())
button2.pack()
button2.grid(row=0, column=2)
fn = entry1.pack()
print fn
feed = filtered['Feeder']==fn
feedfn = filtered[feed]
Cap = feedfn['AC Name Plate Capacity <= 10kw']
Cap = Cap.astype(float)
AcPv = Cap.sum()
print 'The total PV on this feeder is:', AcPv, 'kW'
root = tk.Tk()
frame = tk.Frame(root)
frame.pack()
button = tk.Button(frame,
text='Exit',
fg='red',
command=quit)
button.pack()
button.grid(row=1, column=1)
Fee = tk.Button(frame,
text='Feeder',
command=F)
Fee.pack()
Fee.grid(row=0, column=1)
root.mainloop()
预计 27.702输出0.0鉴于我不会发布 csv,Entry1/fn 应该是 8777
更新我现在在打印 fn 时收到 PY_VAR 的输出,我知道代码在接受输入之前一直在运行。关于如何在运行过滤器之前获取输入有什么建议吗?
def F():
master = tk.Tk()
tk.Label(master, text = 'Feeder Number: ').grid(row=0)
entry1 = tk.Entry(master)
entry1.grid(row=0, column=1)
button2 = tk.Button(master,
text=' Confirm',
command=entry1.get())
button2.grid(row=0, column=2)
fn = tk.IntVar()
print fn
feed = filtered['Feeder']==fn
feedfn = filtered[feed]
Cap = feedfn['AC Name Plate Capacity <= 10kw']
Cap = Cap.astype(float)
AcPv = Cap.sum()
print 'The total PV on this feeder is:', AcPv, 'kW'
<小时/>
对于那些对最终代码感兴趣的人(这对我有用):
def F():
master = tk.Tk()
tk.Label(master, text = 'Feeder Number: ').grid(row=0)
entry = tk.Entry(master)
entry.grid(row=0, column=1)
def pint():
data = entry.get()
master.destroy()
feed = filtered['Feeder']==data
feedfn = filtered[feed]
Cap = feedfn['AC Name Plate Capacity <= 10kw']
Cap = Cap.astype(float)
AcPv = Cap.sum()
fdf = tk.Tk()
tk.Label(fdf, text = AcPv).grid(row=0)
button4 = tk.Button(fdf,
text = ' Exit',
fg='red',
command=fdf.destroy)
button4.grid(row=1)
button2 = tk.Button(master,
text=' Confirm',
command = pint)
button2.grid(row=0, column=2)
button3 = tk.Button(master,
text = ' Exit',
fg='red',
command=master.destroy)
button3.grid(row=0, column=3)
master.mainloop()
最佳答案
您的代码中存在一些错误,导致您收到不同的输出。
首先,为什么您的代码在不显示主框的情况下执行:
如果你想要一个持久的窗口,你的 tkinter 需要 mainloop() 调用。
master.mainloop()
你用你的 root 做了正确的事情,但是你的 master 缺少那个主循环。这一行基本上是让你的 GUI 保持事件状态并循环进行更改,直到它以某种方式被破坏为止。您需要在创建小部件后添加此行,以便能够与窗口交互。在此行之后编写的任何内容(但仍在定义中缩进)都将在窗口关闭时执行,无论是手动还是使用命令:
master.destroy()
接下来,虽然这将产生一个工作窗口,但您仍然可以在主窗口启动时与根窗口交互,如果您期望来自主窗口的变量,这可能会导致问题。我建议您阅读专门针对像您这样的情况而制作的 Toplevel 小部件。 ( http://effbot.org/tkinterbook/toplevel.htm ) 或者,您也可以使用 tkinter 的 tkSimpleDialog.askinteger 或 Askfloat 函数,它们似乎非常适合您的应用程序。
最后,该条目允许您编写文本,但是如何访问文本呢?您可以使用 Entry1.get() 提取条目的内容,或者正如您在更新中开始所做的那样,您可以为该条目分配一个 tkinter 变量。当您更改条目中的写入字符串或数字时,此变量将更新。要将变量绑定(bind)到您的条目,您必须在条目的创建中声明它:
fn = tk.StringVar(value = '000')
entry1 = tk.Entry(master, textvariable = fn)
*注意,这将要求您的 fn 变量在输入之前初始化。此外,您可以在创建时初始化该变量的值
tkinter 变量是一个对象,这就是为什么当你打印它时,你会得到 PY_VAR。 (对象的类型)要访问该值,您需要使用 get() 方法:
print(fn.get())
关于python - 如何更正输入框的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56584784/
这个问题已经有答案了: How to check whether a string contains a substring in JavaScript? (3 个回答) 已关闭 4 年前。 需要在运
我已经为系统调用 sys_uname 编写了内联汇编代码,但它似乎不正确。 #include #include #include #include #include struct utsna
我想知道是否有一种方法可以轻松安全地纠正 float 。 例如, 输入时:"32 + 32.1 "结果:“64.0999999999999” 我还必须提到,在使用科学记数法时,这种情况经常发生。“(2
我想知道如果我定义一个基本 Activity 对象并将我的所有 Activity 作为其子类会发生什么。然后我在基类中声明一个静态变量,所有的子类都使用相同的静态变量还是每个子类都有一个。 例如。我的
我想知道自定义整数类型(如 time_t、socklen_t 等)的正确 printf 格式说明符是什么。 例如, #include #include #include #include #i
我有 175 个 mp4 视频文件和扩展名为 .ass 的字幕文件。不幸的是,我的智能电视无法阅读这些字幕。我计划将字幕刻录(硬编码)到视频中。 我使用这个命令: ffmpeg -i orgvideo
我希望当我在分号后按 enter 键时,光标能够正确缩进。我如何在 VS Code 中实现这一点? 最佳答案 您可以关闭 wrappingIndent,或将其设置回默认的 same,然后确保 form
我的工作地点是研究购买第三方工具,用于使用地理编码的基于批处理的美国和加拿大地址更正。 您使用了什么产品? 您喜欢他们什么? 您不喜欢他们什么? 请注意,我们是C/C++ Unix商店。 最佳答案 我
StyleCop 规则 SA1642 坚持要求我的构造函数文档头必须以“初始化...的新实例”开头。 虽然我同意规则本身,但我就是无法让自己接受 StyleCop 强制执行我认为丑陋的拼写。它是用“s
我有一个包含观察结果和观察日期的数据框。日期是从 csv 文件读取的,但仅包括月份和日期。 R 假设它们都是 2016 年的。我知道日期是按从最近到最近的顺序排列的,那么我该如何添加正确的年份呢? 输
我有一个像这样的 Controller 操作: List abcd = new List() foreach (var i in images) { abcd.Add("{url:'"+Get
我正在使用以下 Nginx配置以防止在我使用 x-robots tag 时索引某些文件夹中的内容 location ~ .*/(?:archive|filter|topic)/.* { add
我需要在表格中更正时区不匹配问题。 unix 时间戳 1253568477 之前的所有日期和时间都需要在其值中加上 5 小时才能使它们等于 GMT。 我有以下列... date(数据类型date),关
我有以下内容: class Program { static void Main(string[] args) { Process pr; pr = new P
我是 xampp 的初学者。每次启动 XAMPP 控制面板时,我都会在日志框中看到错误列表。这是一个例子: 14:58:16 [main] Initializing Control Panel
我在 onTouchEvent(MotionEvent event) 中响应自定义 View 内的触摸事件。我遇到坐标不一致的问题:event.getRaw(Y) 返回触摸的 Y 坐标,包括状态栏,但
这是我在 UITableViewHeaderFooterView View 中设置内容的方法。 - (id)initWithFrame:(CGRect)frame { self = [super in
我有一个像这样的子查询 Select id, sum(select fran_payment.amount from fran_payment
我需要实现 ContraintValidatorFactory 接口(interface),它是 jsr303 的一部分 public interface ConstraintValidatorFac
我的脚本似乎无法正常工作,我想要得到的内容是不言自明的。我尝试了几种不同的方法来完成这项工作,四处搜索并尝试解决它。 我还尝试通过 console.log() 检查 chrome 日志,但它没有运
我是一名优秀的程序员,十分优秀!