Python tkinter图形界面BUTTON事件控制和编辑框返回值出现异常

使用win7的Python3.73的IDLE界面编写图形界面程序,在编码过程中发现,如果定义一个主窗口后再定义一个局部窗口会导致后面的窗口的编辑框设置和取值异常。具体问题用一个测试程序来说明如下:

import tkinter as tk
from tkinter import messagebox

def newwin(title='test',geometry='300x300'):
    def ShowMessage():
        tk.messagebox.showinfo(input.get())
    window = tk.Tk()
    window.title(title)
    window.geometry(geometry)
    input = tk.StringVar()
    input.set('请输入任意内容!')

    tk.Label(window, text='请输入任意内容: ').place(x=10, y= 10)
    entry_new_name = tk.Entry(window, textvariable=input)
    entry_new_name.place(x=150, y=10)
    btn_show = tk.Button(window, text='显示输入', command=ShowMessage)
    btn_show.place(x=80, y=90)
    btn_newwin = tk.Button(window, text='新弹窗', command=newwin)
    btn_newwin.place(x=150, y=90)
    btn_exit = tk.Button(window, text='退出', command=exit)
    btn_exit.place(x=220, y=90)
    return window
root = newwin()
root.mainloop()

上述代码执行后,显示一个窗口,内有:一个输入框,三个按钮,一个是显示输入框内容,一个是再次新建一个同样的窗口,一个是系统退出。执行后第一次打开窗口时相关功能正常,但当选择“新弹窗”弹出一个新的窗口后,编辑框的初始内容没有显示,且输入内容后,在新窗口显示编辑框的内容取得的值为变量初始化的值,没有取得新的输入。
关于以上代码,有如下几个问题:
1、为什么新弹窗中编辑框的显示和变化没有和变量关联起来?
2、上述代码中btn_newwin按钮定义如果改为:“btn_newwin = tk.Button(window, text='新弹窗', command=newwin)”中,如果newwin使用带实参格式,则会导致一启动就会不停新建窗口,导致递归调用过深异常出现才终止?这是为什么 ?
3、该代码存储到文件后,使用dos命令行方式执行文件无任何反应。是图形界面的程序无法在非图形界面解释器下执行吗?该怎么解决?
非常抱歉,本人没有C币,不知可有哪位大拿免费指教?谢谢!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
python tkinter写图形界面
用python tkinter模块做了一个小demo,页面上设置4个按钮,每个按钮点击会有流水的滴答声,每个按钮调用相应的方法,在此点击按钮后调用的方法仅为显示一个消息弹窗,显示图片的按钮打开文件对话框,可选择文件。 实现的最终效果如下图 运行环境:Windows +python2.7 下面以每个模块做具体说明 一. 选择图片 主要为了打开文件对话框可多选,可单选, 多选
python(十九)——图形界面Tkinter下
目录 Spinbox控件 Menu顶层菜单 Menu鼠标右键菜单 Combobox下拉控件 Frame框架控件 tkinter 数据显示 表格数据 树状数据 布局 绝对布局 相对布局 表格布局 鼠标事件 鼠标点击事件 鼠标移动事件 鼠标释放事件 进入事件和离开事件 响应所有按键的事件 响应特殊按键的事件 组合按键事件 Spinbox控件 输入控件...
Python之tkinter中文教程,图形界面
Python之tkinter中文教程,图形界面, Python进阶,Python爬虫基础
Python 图形界面 Tkinter 入门案例
import tkinter.messagebox as messagebox from tkinter import * from tkinter import ttk from tkinter.filedialog import askdirectory从Frame派生一个Application类,这是所有Widget的父容器:class Application(Frame): def...
python(十八)——图形界面Tkinter中
目录 Tkinter组件​ CheckButton复选框控件 语法 显示多选框内容代码: 单选框 ListBox列表框 创建一个listbox 向列表框添加元素 在列表框开头添加元素 在列表框末尾添加元素 删除列表框元素 选中列表框中的元素 获取列表框中元素的个数 返回当前选中的元素的索引项 判断列表中一个元素是否被选中 打印列表框中元素 修改列表框中元素 ...
Python编程:tkinter实现图形界面
Tk会调用操作系统提供的本地GUI接口,完成最终的GUI 效果显示 代码实现 from tkinter import * from tkinter import messagebox class Application(Frame): def __init__(self, master=None): super(Application, self).__in...
python tkinter图形界面代码统计工具
#encoding=utf-8 import os,sys,time from collections import defaultdict from tkinter import * import tkinter.messagebox from tkinter import ttk from tkinter import scrolledtext root= Tk() root.title("...
python之tkinter图形界面的用法汇总
python之tkinter图形界面的用法汇总 参考网页:https://www.runoob.com/python/python-gui-tkinter.html imrpot Tkinter python2 import tkinter python3 pip3 install tk python3下使用pip安装tkinter库 tkinter常用控件 Canvas 画布控件,显示图形和...
python tkinter图形界面,按钮问题,
如果我在按钮函数里面创建了一个线程,还有一些执行需要一段时间的操作,是不是要这些操作都运行完了,创建的线程才会运行?
python tkinter图形界面代码统计工具--更新
代码统计工具 修改了导出excel功能,把原来的主文件进行了拆分 code_count_windows.py #encoding=utf-8 import os,sys,time from collections import defaultdict from tkinter import * import tkinter.messagebox from tkinter import ttk fr...
Python 基于Tkinter的GUI图形界面学习
用Tkinter画图首先要创建一个根挂件,可以用Tk()产生 然后要产生不同类型的小挂件,有标签Label,按钮Button,接口Entry 之类的,具体的查看网上的详细文档。 比如说用widget = Label(None, text = 'hello')产生了一个内容为hello的标签之后还要确定把这个标签放在哪个位置,所以就要用到pack() pack有很多选项,比如说要不
棋盘覆盖图形界面(python自带tkinter库实现)
棋盘覆盖图形界面(python) 一、解决方案和关键代码 工具: python tkinter库 问题描述:   在一个2^k×2^k个方格组成的棋盘中,若有一个方格与其他方格不同,则称该方格为一特殊方格,且称该棋盘为一个特殊棋盘.显然特殊方格在棋盘上出现的位置有4^k种情形.因而对任何k≥0,有4^k种不同的特殊棋盘。   在棋盘覆盖问题中,要用下图中 4 中不同形态的 L 型骨牌...
使用python自带的tkinter库开发图形界面
虽说使用pyqt5开发图形界面更美观,更高效,但想要开发轻量级的小工具,pyqt5不免太过庞大,这时tkinter就派上用场了。 一、一个简单的tkinter模板 import tkinter as tk from PIL import Image, ImageTk class AppUI(): def __init__(self): self.root = tk....
Python学习笔记(十八)PIL图像处理和Tkinter图形界面
参考资料:https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00140767171357714f87a053a824ffd811d98a83b58ec13000https://www.cnblogs.com/xianyue/p/6588869.htmlhttps://blog.cs...
Python图形界面GUI编程之tkinter布局
python图形界面GUI编程之tkinter布局
Python 定时自动关机附带Tkinter图形界面GUI
代码实现windows系统下的定时关机 shutdown指令 注释基于tkinter类库,实现图形界面的windows环境定时关机Python程序,编码环境Python 3.5.2,在安装完python环境后 拷贝保存代码双击即可运行哦。实现后效果命令 order 备注 -shutdown-l 注销这不能与/m或/d选项一起使用 -shutdown-s 关闭计算机 -
求助:tkinter制作图形界面
** 求助:tkinter制作图形界面 ** 我想调用python的第三方库来对文件进行加密解密,目前在制作这个系统的图形界面。整个代码我放在了三个py文件中,但要怎么调用呢? 下面是主代码: #coding=utf-8 from tkinter import * from tkinter.messagebox import * from encrypt_1 import * from decod...
Python Tkinter Button控件command传参问题解决方案
Python Button控件command传参问题解决方案 环境:Ubuntu14、Python3.4、Pycharm2018 一、使用command=lambda: 的形式传参 代码如下 from tkinter import * import tkinter.messagebox as messagebox def createpage(master): master ...
Python Tkinter详解 (三)Button按键的使用
#创建一个按钮 #上一节我们已经介绍了怎么创建空间,多余的就不讲了,我们先创建一个宽20,长2,显示文字为‘单击’的按钮练练手 import tkinter as tk window = tk.Tk() window.title("button") window.geometry("800x480") tk.Button(window,width=20,height=2,text='单击')...
Tkinter 学习笔记 —— Button 部件
本笔记基于 Tkinter 8.5 reference: a GUI for Python创建 Buttonw = tk.Button(parent, option=value, ...)表 5. Button 部件选项 options Description activebackground 按钮在光标下方时的背景颜色 activeforeground 按钮在光标下方时的前景
Tkinter的Button组件的使用
Button组件是用于实现一个按钮,它的绝大多数选项跟Label组件是一样的,不过Button组件有一个command选项,用于指定一个函数或者方法,当用户点击按钮的时候,Tkinter就会自动地区调用这个方法或者函数了代码:from tkinter import *# 导入tkinter模块的所有内容def callback():    var.set("吹吧你,我才不信呢~")root = T...
python Tkinter
1、实现Label\Entry\Menu\Button\OptionMenu等 2、实现通过轮询一部件状态,控制另一部件行为 3、实现TIX的balloon部件显示帮助 4、实现封装函数传递参数
ResultSet 返回值出现异常
下面是我的javabean和对应的jsp页面:rnpackage demo;rnimport java.sql.*;rnpublic class ContactBean2 rn private Connection con;rn private Statement stmt;rn private ResultSet avgRs;rn private String strAvg;rnrn public ContactBean2() rn try rn Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");rn con = DriverManagerrn .getConnection(rn "jdbc:microsoft:sqlserver://localhost:1433;Databasename=bb",rn "sa", "aa");rn catch (ClassNotFoundException e) rn System.out.println("ClassNotFound!");rn catch (SQLException e) rn System.out.println("SQL Server Not Connection");rn rn rn public ResultSet getAvgData(int startCaoh, int endCaoh, String date) rn try rn strAvg = "select avg(wend) as wend from gongyirpt where riq='"rn + date + "' and caoh>='" + startCaoh + "' and caoh<='"rn + endCaoh + "'";rn stmt = con.createStatement();rn avgRs = stmt.executeQuery(strAvg);rn return avgRs;rn catch (SQLException e) rn e.printStackTrace();rn rn return null;rn rnrnrntest.jsp如下:rn<%@ page language="java" import="java.sql.*" contentType="text/html;charset=gb2312"%>rnrnrn rn rn rn 日平均rn <%ResultSet rsAvg1 = null;rn try rn rsAvg1 =dbc.getAvgData(1001, 1037, "2007-11-14");rn if (rsAvg1.next()) %>rn <%=Double.parseDouble(rsAvg1.getString("wend"))%>rn <% else %> 0<%rn catch (SQLException e) rn e.printStackTrace();rn rn rsAvg1.close();rn dbc.closeData();%>rn rnrnrnrn现在的问题是如果我出入的日期是"2007-11-14",就会返回正确结果,因为这个时候数据中有符合条件的记录,但是如果是其他日期,也就是说在数据库中没有符合条件的记录,就会出现错误,出错的意思应该是<%=Double.parseDouble(rsAvg1.getString("wend"))%>这一句,请大家给看看错在什么地方啊,如果该应该怎么该,先谢谢啊。。。。。。。。在线等拉。。。。。。。
请教:如何能用button的click事件控制
现在要求将 隐藏起来(已解决)rn用一个button来控制其click事件 (已解决)rn但当submit表单时,失败。rn为了检查,将file显示出来,重复上述过程,发现提交时,file被清空,如果再单击提交按钮,则成功,但当然了,文件上传失败。rn更令人郁闷的是:假如正常使用file(不用click来控制),如果人为往里输入路径,虽然文件存在,但提交时仍被清空,然后当然了,失败。rn请问各位大侠,如何能做到用click事件控制?或者如何能手动输入路径?盼答,万分感激.rn
如何用button的click事件控制datagrid的分页
datagrid有可以自动分页,并有next按钮,但我想用button来控制分页,怎么做?
小白学tkinter(按钮Button)
Button command
编辑框EditText与按钮Button
在一个应用中,登录是经常使用的,下面我们学习一下如何开发一个登录窗口。我们需要学习Android中的基本控件:(1)EditText编辑框、(2)Button按钮。 一、设计登录窗口   打开“res/layout/activity_main.xml”文件。    1、分别从工具栏向activity拖出2个EditText(来自Text Fields)、1个按钮(来自Form Wid
Tkinter 组件详解(二):Button
Tkinter 组件详解之Button 简介 Button(按钮)组件用于实现各种各样的按钮。Button 组件可以包含文本或图像,你可以将一个 Python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行。 Button 组件仅能显示单一字体的文本,但文本可以跨越多行。另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键)。默认情况下,tab 按键被用于在按...
应用python的tkinter写图形界面,如何在控件上显示中文?
比如在一个label上显示出中文,可运行后显示的都是乱码。
TKinter编程代码实例 Python TKinter 中文教程
多种案例提供Python图形化编程,上手容易,推荐使用
Python图形界面
#!/usr/bin/env python3 from tkinter import * import tkinter.messagebox as messagebox''' Tkinter介绍 我们编写的Python代码会调用内置的Tkinter,Tkinter封装了访问Tk的接口; Tk是一个图形库,支持多个操作系统,使用Tcl语言开发; Tk会调用操作系统提供的本地GU
同一图形界面:tkinter和wxPython代码对比
一:运行效果 1.tkinter运行效果 2.wxPython运行效果 二:代码 1.tkinter代码 from Tkinter import * from tkFont import Font class Test(object): def __init__(self): self.root = Tk() self.root.
python图形界面
setFixedSize() 禁止调整窗口大小,参数为长和宽。
181204Python学习日记——GUI图形界面之tkinter
GUI图形界面开始让我有了一点点开发软件的感觉,目前还没有学完,但今天就比较好的实例做一点分享 import tkinter as tk import tkinter.messagebox class Application(tk.Frame): #派生于Frame类 def __init__(self,master = None): #构造函数,master为父窗口 ...
Python学习--Python图形界面
1.几种常见的图形化模块: Tkinter 使用TK平台版标准化,本身是一个老资格的图形化,国外图形化一般使用TK来写。 Wxpython 基于wxwindows跨平台 Pythonwin 适用于windows,一般用来写外挂 PyQt 使用QT平台 跨平台 PyGTK 使用GKT平台流行于linux 2. Python三种文件 Py – 脚本文件 P...
基于Tkinter的Python布局管理
 Layout management in Tkinter In this part of the Tkinter programming tutorial, we introduce layout managers. When we design the GUI of our application, we decide what widgets we will use and how...
Python与Tkinter编程
本书来源于网络,适合大家私底下交流学习,请勿用于商业目的!
python学生管理系统tkinter版
python学生管理系统tkinter版,方便新学习python的同学学习。十分简单,内含教程。
python Tkinter Tk
python写的图形编程使用程序,里面有一个用python写的计算器程序 还有详细的介绍event的处理机制 原理和使用 非常不错哦
python与tkinter编程
适用各个python级别的程序员参考
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数

相似问题