先上图

代码如下

 #-*-coding:utf-8-*-
import os
from tkinter import * root=Tk()
root.title('执行窗口') """
V1.2 """
def add(a,b):
a=int(a)
b=int(b)
sum=eval('a+b') #执行表达式
print('a+b=',sum) return sum #调用其他函数fun(asg1,asg2)
def go_func():
#第一个参数,调用函数,第2个参数,函数参数
func = n51.get()
asgs = n52.get()
func = eval(func) #转为函数
#print(type(func))
#无参数
if len(asgs) == 0:
func()
else:
#多参数j,分割
asg=asgs.split(',')
func(*asg) #--------------------------------------
#清空文本框内容
def clear():
text.delete('1.0','end') #执行
def show():
print('hello')
text.insert('1.0', "hello\n") #文本信息
def insert_text(msg):
text.insert(INSERT,'%s'%msg) def get_app_deviceid():
print('请先检查是否连接了设备,是否启动了开发者选项,是否开启了adb调试....')
#查看连接设备
out=os.popen('adb devices').read()
patter= re.compile(r"[a-zA-Z0-9]+")
device_list=patter.findall(out)
#print(device_list)
print('设备连接信息:--------------------------------------\n',out) #调取text
insert_text(out) #存放设备号
deviceid=[]
#提取设备号,存放到deviceid中,
if 'device' in device_list:
#print('设备号:',deviceid)
#多个设备,
n=4
while len(device_list)>n:
deviceid.append(device_list[n])
n=n+2
print('设备号:',deviceid)
else:
print('无此设备,请检查是否连接设备。')
return out #执行cmd命令
def execute_cmd(cmd='adb devices'):
cmd= e1.get()
print(cmd)
out = os.popen(cmd).read()
print(out)
return out def get_text():
# 获取entry输入的文字
str2=""
str2=e1.get() # 在光标处插入文字
text.insert("insert", str2) #-grid----------------------------------------------------------------------- #label控件
Label(root,text="输入命令:").grid(row=0,column=0,sticky=E) #靠右
Label(root,text="本地目录:").grid(row=1,column=0,sticky=E) #靠右
Label(root, text='手机目录').grid(row=2,column=0,sticky=E) #靠左 Label(root, text='显示结果',width=15).grid(row=3,column=1,sticky=W) #靠左 #输入控件
e1=Entry(root,width=30)
e1.grid(row=0,column=1,padx=5,pady=5)
e2=Entry(root,width=30)
e2.grid(row=1,column=1,padx=5,pady=5)
e3=Entry(root,width=30)
e3.grid(row=2,column=1,padx=5,pady=5) #命令控件
#b1=Button(root,text="点击看看吧",command=show,height=1,width=15,fg='blue').grid(row=2,column=1)
#Label(root, text='显示结果', width=15, height=1).grid(row=2,column=1,sticky=W) #靠左
#grid(row=1,column=2),row,行,从0开始,column列从0开始;
b1=Button(root,text="执行命令",command=get_text,height=1,width=15,fg='blue').grid(row=0,column=2,padx=5, pady=5)
b2=Button(root,text="安装包",command=show,height=1,width=15,fg='blue').grid(row=1,column=2,padx=5, pady=5) b3=Button(root,text="查看设备",command=get_app_deviceid,height=1,width=15,fg='blue').grid(row=4,column=0,padx=5, pady=5)
b4=Button(root,text="清空",command=clear,height=1,width=15,fg='black').grid(row=4,column=2,padx=5, pady=5) #显示结果,text控件
text = Text(root, width=30, font =('Verdana',10),fg='blue')
text.grid(row=4,column=1,rowspan=3) #调用函数
Label(root, text='调用函数').grid(row=8,column=0)
Label(root, text='输入函数名').grid(row=8,column=1)
Label(root, text='输入参数').grid(row=8,column=2) #调用函数
b5= Button(root,text = "加法",command = go_func,width = 15).grid(row = 9,column = 0,padx=5, pady=5)
#输入函数名
var1 = StringVar()
n51 = Entry(root,width = 30,textvariable = var1)
var1.set("add")
n51.grid(row = 9,column = 1) #输入函数参数
var2 = StringVar()
n52 = Entry(root,width = 30,textvariable = var2)
var2.set("a,b")
n52.grid(row = 9,column = 2) root.mainloop()

python tkinter模块 创建窗口V1.2的更多相关文章

  1. Python tkinter模块弹出窗口及传值回到主窗口操作详解

    这篇文章主要介绍了Python tkinter模块弹出窗口及传值回到主窗口操作,结合实例形式分析了Python使用tkinter模块实现的弹出窗口及参数传递相关操作技巧,需要的朋友可以参考下 本文实例 ...

  2. python3中 tkinter模块创建window窗体、添加按钮、事务处理、创建菜单等的使用

    开始接触桌面图形界面编程,你可以到安装路径  \lib\tkinter 打开__init__.py 文件了解tkinter 1    tkinter 模块创建窗体,代码如下截图: 运行结果,如有右图显 ...

  3. python - Tkinter 模块 - python 自带的gui模块

    Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口,位Python的内置模块,直接import tkinter即可使用. 1.创建窗口 from Tk ...

  4. Python Tkinter模块 Grid(grid)布局管理器参数详解

    在使用Tkinter模块编写图像界面时,经常用到pack()和grid()进行布局管理,pack()参数较少,使用方便,是最简单的布局,但是当控件数量较多时,可能需要使用grid()进行布局(不要在同 ...

  5. 利用TKinter模块创建GUI窗口

    # -*- coding: utf-8 -*- from Tkinter import *     root = Tk() # 80x80代表了初始化时主窗口的大小,0,0代表了初始化时窗口所在的位置 ...

  6. Python tkinter模块和参数

    转自:https://www.cnblogs.com/aland-1415/p/6849193.html 1.使用tkinter.Tk() 生成主窗口(root=tkinter.Tk()):root. ...

  7. python XlsxWriter模块创建aexcel表格

    https://blog.csdn.net/qq_41030861/article/details/82148777 安装使用pip install XlsxWriter来安装,Xlsxwriter用 ...

  8. python tkinter模块小工具界面

    代码 #-*-coding:utf-8-*- import os from tkinter import * root=Tk() root.title('小工具') #清空文本框内容 def clea ...

  9. python TKinter的主窗口运行程序完毕后,怎么让其自动关闭

    如题: 在pycharm 调试Tkinter程序的时候,关闭右上角的X 实际上并未退出进程,长期以往 再大的内存也会被耗尽. 一般就是下面的代码: """ from tk ...

随机推荐

  1. Jquery Mac OS Desktop项目想启动

    想用Jquery做个MAC OS Desktop应用框架,欢迎大家提建议.

  2. 关于OleDB连接Excel的Extended Properties(扩展属性)HDR=YES; IMEX=2个人理解心得

    近期在用C#写一个创建Excel并将数据导出到Excel的WinForm程序, 让我对OleDB连接Excel的Extended Properties(扩展属性)HDR=YES; IMEX=2有了深刻 ...

  3. C#之选择排序

    算法描述 1.假定未排序序列中第一位为数组最小值,通过与后面的数值进行比较,找到未排序序列中最小值,与未排序序列第一位交换位置: 2.重复步骤一,对剩余未排序序列进行比较找出最小值,与未排序序列中第一 ...

  4. 5分钟APIG实战: 使用Rust语言快速构建API能力开放

    序言:Rust语言简介 参与过C/C++大型项目的同学可能都经历过因为Null Pointer.Memory Leak等问题“被” 加班了不知道多少个晚上.别沮丧,你不是一个人,Mozilla Fir ...

  5. LLDB 常用命令

    dump: memory read --force --outfile [文件名] --binary [start_address] [end_address] 查找函数地址: 对于有调试符号的这样使 ...

  6. bootstrap table 显示连续序号,分页有效

    参考:http://blog.csdn.net/nazhidao/article/details/51647799 第一种,通过index+1可以简单实现,但是,翻页后又重新从第一个开始 { fiel ...

  7. js【面向过程编程】、好、 【init()、 GetData()、 bindData()、bindDom、 bindEvent()、buyProduct()、AddProductToCart()】*****************

    1. 一般页面开发方式 [可读性差.可维护性差]------初级开发工程师 一般页面编写方法 var name = 'iphone8' var description = '手机中的战斗机 ' var ...

  8. Redis学习和应用记录(1)--介绍和安装

    Redis是一个开源的分布式缓存框架,它也常被理解为数据结构服务器,因为它包含丰富的数据类型,如strings, hashes, lists, sets, sorted sets, bitmaps a ...

  9. hash练习们

    610. 数对的个数 ★★   输入文件:dec.in   输出文件:dec.out   简单对比时间限制:1 s   内存限制:128 MB Description出题是一件痛苦的事情!题目看多了也 ...

  10. 局部覆盖element-ui的默认样式

    最近项目中遇到的问题,只想在某个页面里面单独更改element-ui的样式,而不影响全局 有两种方法: 1.在需要更改的组件里新增一个style标签[重点:不要加scoped],然后直接获取class ...