我的tkinter學習筆記3

這邊就上面的知識,進行一個小工具開發。主要實現功能有快速查看設備名、包名和Activity.具體看實現的代碼

#coding:utf-8  from tkinter import *  import tkinter as tk  import os    root = Tk()  root.title('獲取APP應用小工具')  # 按扭調用的函數,  def get_devices():      lists = (os.popen('adb devices').read())      devices = (lists.strip().split('n'))      devices_list = []      for i in range(1, len(devices)):          device = (devices[i].split('t')[0])          devices_list.append(device)      if devices_list:  # 通過判斷列表是否為真(有數據),說明獲取設備序列號成功          return devices_list[0]      else:          return "沒有發現設備,請檢查設備是否連接電腦!"    def get_packy():      #  adb shell dumpsys window w |findstr / |findstr name=      zhi = (os.popen('adb shell dumpsys window w |findstr / |findstr name=').read())      d = (zhi.strip().split('n'))      pack = d[0].split('=')[-1]      print(pack)      package = pack.split('/')[0]      # print(package)      return package    def get_activity():      zhi = (os.popen('adb shell dumpsys window w |findstr / |findstr name=').read())      d = (zhi.strip().split('n'))      act = d[0].split('=')[-1]      print(act)      activity = act.split('/')[1]      a = activity.replace(')','')      print(a)      return a    def huoqu_activity():      result3 = get_activity()      print(result3)      v3.set(str(result3))      global root      e3 = tk.Entry(root, text=v3, state="readonly")      e3.pack(side=LEFT)    def huoqu_package():      result2 = get_packy()      print(result2)      v2.set(str(result2))      global root      e2 = tk.Entry(root, text=v2, state="readonly")      e2.pack(side=LEFT)    def huoqu_name():      result = get_devices()      print(result)      v1.set(str(result))      global root      e1 = tk.Entry(root, text=v1, state="readonly")      e1.pack(side=LEFT)    tk.Label(root, text="device_name:").grid(row=0, column=0,sticky=W)  # 位於第0行,第0列  tk.Label(root, text="package:").grid(row=1, column=0, sticky=W)  # 位於第1行,第0列  tk.Label(root, text="Activity:").grid(row=2, column=0, sticky=W)  # 位於第1行,第0列  v1 = tk.StringVar()  v2 = tk.StringVar()  v3 = tk.StringVar()  e1 = tk.Entry(root, textvariable=v1, state="readonly", width=50)  e2 = tk.Entry(root, textvariable=v2, state="readonly", width=50)  e3 = tk.Entry(root, textvariable=v3, state="readonly", width=50)    e1.grid(row=0, column=1, padx=10, pady=5)  # 位於第0行,第1列  e2.grid(row=1, column=1, padx=10, pady=5)  # 位於第1行,第1列  e3.grid(row=2, column=1, padx=10, pady=5)  # 位於第1行,第1列  # 第三行登陸按扭,command綁定事件  B_1 = Button(root, text='獲取設備名稱', command=huoqu_name).grid(row=0,column=2,sticky=tk.E)    B_2 = Button(root, text='獲取包名', command=huoqu_package).grid(row=1,column=2,sticky=tk.E)    B_3 = Button(root, text='獲取Activity', command=huoqu_activity).grid(row=2,column=2,sticky=tk.E)    # b_login = Button(root, text='獲取設備信息', command=huoqu_name)  # b_login.grid(row=3, column=1, sticky=E)    tk.Button(root,text="退出", command=root.quit)              .grid(row=3,column=2,sticky = tk.E)    root.mainloop()

運行結果