Python Tkinter+py2exe[通俗易懂]

Python Tkinter+py2exe[通俗易懂]最近写小工具,用了pyhon的Tkinter,mark一下,省的到处去找。。。第一波:标签Label,文本框Entry,按钮Button,Text文本域#coding:utf-8fromTkinterimport*root=Tk()#创建主窗口label=Label(master=root,text=”这是一个标签”)label.grid(row=0,c

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

最近写小工具,用了pyhon的Tkinter,mark一下,省的到处去找。。。

第一波:标签Label,文本框Entry,按钮Button,Text文本域

#coding:utf-8
from Tkinter import *

root = Tk() #创建主窗口

label = Label(master=root,text="这是一个标签")
label.grid(row=0,column=0,sticky='w')#grid布局器,row表示标签在第几行,column表示标签在第几列,sticky表示标签对齐方式
#n/s/w/e 表示 上/下/左/右(北/南/西/东)

#其实上面的label变量没什么用,可以如下:
Label(master=root,text="请在这里输入点什么").grid(row=1,column=0,columnspan=2,sticky='e')#columnspan表示跨几列,rowspan表示跨几行

#文本框
var = StringVar() #捕获文本框输入的内容
Entry(master=root,textvariable=var).grid(row=1,column=3)#文本框和变量var关联起来,这样就可以捕获键盘输入

#文本域,用于显示输出
text = Text(master=root,height=10,width=50)

def fun():
    text.insert(END,"点击按钮将会将用户的输入 输出到文本域\n")#向文本域输出内容
    if not var.get():
        text.insert(END,"麻烦先在文本框输入一点内容\n")
    else:
        varStr = var.get()
        text.insert(END,varStr+"\n")
#按钮
Button(master=root,text="这是一个按钮",command=fun).grid(row=1,column=4,sticky='e')

#text的布局一定要放在后面,否则报错...
text.grid(row=2)#height和width用于指明高度和宽度
#事件循环
root.mainloop()

效果图:点击按钮

Python Tkinter+py2exe[通俗易懂]

Python Tkinter+py2exe[通俗易懂]

第二波:单选按钮Menubutton菜单按钮

#coding:utf-8
from Tkinter import *

root = Tk()

text = Text(master=root)

#单选按钮
var = StringVar()
def fun_1():
    text.insert(END,var.get()+"\n")
def fun_2():
    text.insert(END,var.get()+"\n")
Radiobutton(master=root,text="选择1",variable=var,value="输出选择1",command=fun_1).grid(row=0,column=0)
Radiobutton(master=root,text="选择2",variable=var,value="输出选择2",command=fun_2).grid(row=0,column=1)

#创建下拉菜单
menubar = Menu(root)
#每次打印出当前选中的语言
def fun_4():
    text.insert(END,"fun_4\n")
menuOne = Menu(menubar,tearoff = 0)
menuOne.add_command(label="First",command=fun_4)
menuOne.add_separator()
menuOne.add_command(label="Exit",command=root.quit)#退出按钮
menubar.add_cascade(label = '下拉菜单',menu = menuOne)
root['menu'] = menubar

text.grid(row=2,columnspan=2)
root.mainloop()

效果图:点击“选择1”按钮,下拉菜单”First“按钮

Python Tkinter+py2exe[通俗易懂]

Python Tkinter+py2exe[通俗易懂]

第三波:将下拉菜单放在任意位置,并为Text添加滚动条

#coding:utf-8
from Tkinter import *

root = Tk()

text = Text(master=root)

#将下拉菜单添加到任意位置
def fun_1():
    text.insert(END,"fun_1\n")
def fun_2():
    text.insert(END,"fun_2\n")
menuButton = Menubutton(root,text = '下拉菜单')
menuButton.menu = Menu(menuButton)
#生成菜单项
menuButton.menu.add_command(label = "1",command=fun_1)
menuButton.menu.add_command(label = "2",command=fun_2)
menuButton['menu'] = menuButton.menu
menuButton.grid(row=0,column=2)

text.grid(row=1,column=0,columnspan=3)
#添加滚动条
scrollBar = Scrollbar(root)
scrollBar['command'] = text.yview#等价于scrollBar.config( command = text.yview )
scrollBar.grid(row=1,column=3)

root.mainloop()

效果图:点击下拉菜单的”1“按钮

Python Tkinter+py2exe[通俗易懂]Python Tkinter+py2exe[通俗易懂]

py2exe可以将python程序转为exe程序:

首先下载py2exe:点击打开链接,然后安装它

然后在需要打包的py文件目录下新建一个setup.py,假设待带包的文件是tk.py

#coding:utf-8
from distutils.core import setup
import py2exe

setup(windows=["tk.py"])#windows表示GUI程序,如果是控制台程序请将windows替换为console,tk.py是待打包的文件

tk.py和setup.py在同一目录下:这样避免设置路径问题

Python Tkinter+py2exe[通俗易懂]

然后cmd进入该目录,执行:python setup.py py2exe

执行成功后目录下会多一个dist文件夹,dist文件夹下就有一个与pyhont脚本同名exe程序,点击这个exe即可运行

Python Tkinter+py2exe[通俗易懂]

Python Tkinter+py2exe[通俗易懂]

Python Tkinter+py2exe[通俗易懂]

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195378.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 7年员工主动辞职HR: 本来想辞退你, 现在28万赔偿不用给你亏大了

    7年员工主动辞职HR: 本来想辞退你, 现在28万赔偿不用给你亏大了

    2022年2月13日
    46
  • pycharm创建python虚拟环境_pycharm 虚拟环境

    pycharm创建python虚拟环境_pycharm 虚拟环境点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤身体是革命的本钱,身体健康最重要!/1前言/  上次小编给大家介绍了P…

    2022年8月26日
    5
  • 过采样和欠采样_欠采样有几种情况

    过采样和欠采样_欠采样有几种情况一、采样定理只要采样频率高于信号最高频率的两倍,就可以从采样信号中恢复出原始信号。二、过采样和欠采样1、采样频率高于信号最高频率的两倍,这种采样被称为过采样。2、采样频率低于信号最高频率的两倍,这种采样被称为欠采样。三、基带信号和频带信号的采样1、对基带信号进行欠采样是无法从采样信号中恢复出原始信号的,因此基带信号的采样都是过采样。 2、对频带信号进行采样可以是…

    2025年8月24日
    9
  • Java开发框架!高级java工程师简历模板[通俗易懂]

    第一部分必读系列:01.学习算法和刷题的思路指南02.学习数据结构和算法读什么书03.动态规划解题套路框架04.动态规划答疑篇05.动态规划答疑篇06.回溯算法解题套路框架07.二分查找解题套路框架08.滑动窗口解题套路框架09.双指针技巧总结10.BFS算法套路框架11.Linux的进程、线程、文件描述符是什么12.Git/SQL/正则表达式的在线练习平台第二部分动态规划系列:01.动态规划设计:最长递增子序列02.经典动态规划:0-1背包问题03.经典动态规划:完

    2022年4月17日
    45
  • 安装PyTorch(pytorch官网下载教程)

    安装PyTorch过程安装anaconda环境管理PyTorch安装检验安装安装anaconda登录anaconda的官网下载,anaconda是一个集成的工具软件不需要我们再次下载。anaconda官网点击下载跳转到这个页面如果你的Python版本正好是3.8版,那便可以直接根据系统去选择自己相应的下载版本就可以了。但是如果你的Python版本号不是当前页面的版本号,那我建议你去选择相对应的版本号。点击archive你就会跳转到下面的页面你可以访问这篇博客去找到当前与你python版本号相对

    2022年4月15日
    52
  • ZOJ 3826 Hierarchical Notation 模拟

    ZOJ 3826 Hierarchical Notation 模拟

    2022年1月2日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号