先上图

代码如下

 #-*-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. Android系统编译时遇到的几个.mk的疑惑。

    在Android4.2的源代码Build/prduct_config.mk里面遇到几个疑惑: # Convert a short name like "sooner" into t ...

  2. Cocos Code IDE + Lua初次使用FastTiledMap的坑

    近期想玩玩Lua.又想玩玩Cocos Code IDE.更加想写一个即时战斗的.防守的.会动的.有迷雾的.要探索的(旁白:给我停!)跑地图游戏. 于是我就用Cocos Code IDE来写游戏了.挑战 ...

  3. Android 应用按返回键异常退出的问题

    开发过程中遇到按返回键异常退出的问题,log显示为空指针异常,进一步产看是由于onActivityResult得到的Intent为空. 按返回键复写代码例如以下: @Override public v ...

  4. LeetCode 893. Groups of Special-Equivalent Strings (特殊等价字符串组)

    题目标签:String 题目可以让在 偶数位置的 chars 互换, 也可以让 在 奇数位置的 chars 互换. 所以为了 return 正确的 group 数量,需要把 那些重复的 给排除掉. 可 ...

  5. 【poj 1724】 ROADS 最短路(dijkstra+优先队列)

    ROADS Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 12436 Accepted: 4591 Description N ...

  6. socket实现web server

    http://blog.csdn.net/u012734441/article/details/44801523 很好的一个例子,现在java程序原开发web服务端程序基本上都使用现成的web框架,这 ...

  7. 布局技巧1:创建可重用的UI组件(include标签)

    Android平台提供了大量的UI构件,你可以将这些小的视觉块(构件)搭建在一起,呈现给用户复杂且有用的画面.然而,应用程序有时需要一些高级的视觉组件.为了满足这一需求,并且能高效的实现,你可以把多个 ...

  8. java使用poi读取word(简单,简约,直观)

    java使用poi读取word(简单,简约,直观) 说明 其实poi的官网上面都是有接口和样例的,只是都是英文 例如网址:http://poi.apache.org/spreadsheet/quick ...

  9. [POI 2018] Prawnicy

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=5102 [算法] 首先,n条线段的交集一定是[Lmax,Rmin] , 其中,Lmax ...

  10. 洛谷P1045 麦森数

    题目描述 形如2^{P}-12 ​P ​​ −1的素数称为麦森数,这时PP一定也是个素数.但反过来不一定,即如果PP是个素数,2^{P}-12 ​P ​​ −1不一定也是素数.到1998年底,人们已找 ...