代码

  1. #-*-coding:utf-8-*-
  2. import os
  3. from tkinter import *
  4.  
  5. root=Tk()
  6. root.title('小工具')
  7.  
  8. #清空文本框内容
  9. def clear():
  10. text.delete('1.0','end')
  11.  
  12. #执行
  13. def show():
  14. print('hello')
  15. text.insert('1.0', "hello\n")
  16.  
  17. #文本信息
  18. def insert_text(msg):
  19. text.insert(INSERT,'%s'%msg)
  20.  
  21. def get_app_deviceid():
  22. print('请先检查是否连接了设备,是否启动了开发者选项,是否开启了adb调试....')
  23. #查看连接设备
  24. out=os.popen('adb devices').read()
  25. patter= re.compile(r"[a-zA-Z0-9]+")
  26. device_list=patter.findall(out)
  27. #print(device_list)
  28. print('设备连接信息:--------------------------------------\n',out)
  29.  
  30. #调取text
  31. insert_text(out)
  32.  
  33. #存放设备号
  34. deviceid=[]
  35. #提取设备号,存放到deviceid中,
  36. if 'device' in device_list:
  37. #print('设备号:',deviceid)
  38. #多个设备,
  39. n=4
  40. while len(device_list)>n:
  41. deviceid.append(device_list[n])
  42. n=n+2
  43. print('设备号:',deviceid)
  44. else:
  45. print('无此设备,请检查是否连接设备。')
  46. return out
  47.  
  48. #执行cmd命令
  49. def execute_cmd(cmd='adb devices'):
  50. cmd= e1.get()
  51. print(cmd)
  52. out = os.popen(cmd).read()
  53. print(out)
  54. return out
  55.  
  56. def get_text():
  57. # 获取entry输入的文字
  58. str2=""
  59. str2=e1.get()
  60.  
  61. # 在光标处插入文字
  62. text.insert("insert", str2)
  63.  
  64. #-grid-----------------------------------------------------------------------
  65.  
  66. #输入命令
  67. Label(root,text="输入命令:").grid(row=0,column=0,sticky=E) #靠右
  68. Label(root,text="本地目录:").grid(row=1,column=0,sticky=E) #靠右
  69. Label(root, text='手机目录').grid(row=2,column=0,sticky=E) #靠左
  70.  
  71. Label(root, text='显示结果',width=15).grid(row=3,column=1,sticky=W) #靠左
  72.  
  73. #输入控件
  74. e1=Entry(root,width=30)
  75. e1.grid(row=0,column=1,padx=5,pady=5)
  76. e2=Entry(root,width=30)
  77. e2.grid(row=1,column=1,padx=5,pady=5)
  78. e3=Entry(root,width=30)
  79. e3.grid(row=2,column=1,padx=5,pady=5)
  80.  
  81. #命令行
  82. #b1=Button(root,text="点击看看吧",command=show,height=1,width=15,fg='blue').grid(row=2,column=1)
  83. #Label(root, text='显示结果', width=15, height=1).grid(row=2,column=1,sticky=W) #靠左
  84.  
  85. b1=Button(root,text="执行命令",command=get_text,height=1,width=15,fg='blue').grid(row=0,column=2,padx=5, pady=5)
  86. b2=Button(root,text="安装包",command=show,height=1,width=15,fg='blue').grid(row=1,column=2,padx=5, pady=5)
  87.  
  88. b3=Button(root,text="查看设备",command=get_app_deviceid,height=1,width=15,fg='blue').grid(row=4,column=0,padx=5, pady=5)
  89. b4=Button(root,text="清空",command=clear,height=1,width=15,fg='black').grid(row=4,column=2,padx=5, pady=5)
  90.  
  91. #显示结果text
  92. text = Text(root, width=30, font =('Verdana',10),fg='blue')
  93. text.grid(row=4,column=1,rowspan=3)
  94.  
  95. root.mainloop()

python tkinter模块小工具界面的更多相关文章

  1. Python+Tkinter 密保小工具

    上图 代码 核心 编解码方面 Tkinter界面更新 总结 昨天被一同学告知,网上的一个QQ密码库中有我的一条记录,当时我就震惊了,赶紧换了密码.当然了,这件事也给了我一个警示,那就是定期的更换自己的 ...

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

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

  3. python random模块 - 小驹的专栏 - 博客频道 - CSDN.NET

    python random模块 - 小驹的专栏 - 博客频道 - CSDN.NET python random模块 分类: python 2011-11-15 15:31 6037人阅读 评论(2) ...

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

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

  5. Python趣味实用小工具

    代码地址如下:http://www.demodashi.com/demo/12918.html python 趣味实用小工具 概述 用python实现的三个趣味实用小工具: 图片转Execl工具 , ...

  6. 几个可以提高工作效率的Python内置小工具

    在这篇文章里,我们将会介绍4个Python解释器自身提供的小工具.这些小工具在笔者的日常工作中经常用到,减少了各种时间的浪费,然而,却很容易被大家忽略.每当有新来的同事看到我这么使用时,都忍不住感叹, ...

  7. python提效小工具-统计xmind用例数量

    问题:做测试的朋友们经常会用到xmind这个工具来梳理测试点或写测试用例,但是xmind8没有自带的统计测试用例,其他版本的xmind有些自带节点数量统计功能,但也也不会累计最终的数量,导致统计测试工 ...

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

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

  9. 纯Python综合图像处理小工具(3)10种滤镜算法

    <背景>  滤镜处理是图像处理中一种非常常见的方法.比如photoshop中的滤镜效果,除了自带的滤镜,还扩展了很多第三方的滤镜效果插件,可以对图像做丰富多样的变换:很多手机app实现了实 ...

随机推荐

  1. code vs 3376 符号三角形

    3376 符号三角形  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 如下图是由14个“+”和14个“-”组 ...

  2. 完全卸载SQL Server 2008 R2(转)

    系统:Windows 10 以下方法转自:http://www.cnblogs.com/qanholas/p/3804123.html 1.在控制面板卸载Miscrosoft SQL Server 2 ...

  3. MySql解压版使用

    1.解压 2.配置环境变量 3.新建空目录data,修改ini配置文件,修改basedir和datadir 4.管理员运行cmd,进入bin目录 5.mysql -install,如果提示错误,先my ...

  4. tiny4412移植opencv2.4.7手记

    在买了新的4412板子后.打算趁着刚成功在6410上移植过的经验,速度解决下.不想出现了各种问题.小结下: 1.关于opencv的移植: tiny4412的linux3.5上,须要把opencv的li ...

  5. oc33--构造方法2

    // Person.h #import <Foundation/Foundation.h> @interface Person : NSObject @property int age; ...

  6. B3680 吊打xxx 物理???

    看到一道很有意思的题,这个题简直有毒,是一道物理题...好像得用模拟退火...但显然我太弱了不会模拟退火,只能用正交分解暴力... 每次沿着力的方向走一定的距离,假如转头了,则走的步长就减小一点. 不 ...

  7. iOS版本、iPhone版本、Xcode版本比对

    iOS版本 iPhone版本 Xcode版本 其他 2003年 Xcode1.0 2005年4月29日 Xcode2.0 2007年1月9日 iPhone OS(iOS1): 虚拟键盘.谷歌地图 第一 ...

  8. 利用递归分割(Split)字符串

    利用递归分割(Split)字符串 SqlServer 递归 工作需要将表里的某个字段分割之后再插入到另一个表中,其实数据量不大,直接用游标一行一行的取,再利用循环来分割之后再实现数据的插入应该可以直接 ...

  9. Agri-Net(prim)

    http://poj.org/problem?id=1258 #include<stdio.h> #include<string.h> ; <<; int map[ ...

  10. javascript从作用域链的角度看闭包

    闭包 闭包是一个能访问外部函数定义的变量的函数. 为什么? 当访问一个变量时,解释器会首先在当前作用域查找标示符,如果没有找到,就去父作用域找,直到找到该变量的标示符或者不再存在父作用域了,这就是作用 ...