Python + tkinter + threading + ADB 制作手机app操控助手(二、升级需求)

第一代的脚本可以跑起来实现了基本需求,只是无界面看着不好看,功能单一,模拟点击的位置还需要手动修改,换个手机(分辨率不同)做脚就得重新设定了, 比较麻烦。

新的需求:

1、有个界面。可以以判断手机是否已连接上线。

2、可以自动生成所需数据。

3、任意手机可以正常使用,不用修改脚本文件。

4、操作后可自动能判断是否添加成功。

本期重点是添加界面,我使用的是tkinter 第一次使用,也不知道哪个好用,用这试试看吧。

1、首先是pip安装了, 这个就不多说了。

2、创建一个界面的类,实例化界面。

from tkinter import *
from tkinter import ttk

class Calculator:
    def __init__(self, pwindow):
        self.pwindow = pwindow
        self.init_pwindow()

    def init_pwindow(self):
        pass


if __name__ == '__main__':
    parent_window = Tk()  
    Calculator(parent_window)   #实例化 
    parent_window.mainloop()

3、界面组件添加编辑 (pass 修改)

self.pwindow.title('*****操控助手V.1.1')  # 窗口名
self.pwindow.geometry('700x650')  # 设置窗口的大小以及在屏幕上的位置
#锁定长宽
self.pwindow.resizable(width=False, height=False)

4、添加label 用于描述手机与电脑端(adb)连接方法

#连接手机方法
self.label1 = Label(self.pwindow,width=50,anchor="w",text = "1、设置-手机-连续点击版本号7次-输入密码即可")
self.label1.place(x=10,y=5) #在窗口显示的位置
self.label1 = Label(self.pwindow,width=50,anchor="w",text = "2、设置-系统和更新-开发人员选项-调试")
self.label1.place(x=10,y=25) #在窗口显示的位置
self.label1 = Label(self.pwindow,width=50,anchor="w",text = "3、勾选仅充电模式下允许ADB调试")
self.label1.place(x=10,y=45) #在窗口显示的位置
self.label1 = Label(self.pwindow,width=50,anchor="w",text = "4、选择USB调试")
self.label1.place(x=10,y=65) #在窗口显示的位置
self.label1 = Label(self.pwindow,width=70,anchor="w",text = "5、如果还是无法连接,找到USB配置-选择RNDIS(USB 以太网)")
self.label1.place(x=10,y=85) #在窗口显示的位置

5、创建连接按钮button及连接手机的对话框text

#连接按钮
self.button_1 = Button(self.pwindow,width=10, text="连接测试", bg="yellow",command=self.Connectiphone)
self.button_1.place(x=600,y=25)
#对话框
self.text_1 = Text(self.pwindow, width=30, heigh=5)
self.text_1.place(x=380,y=10)

6、创建自动添加数据选项,时间范围,数据范围

self.label1 = Label(self.pwindow,width=15,text = "小时")
self.label1.place(x=470,y=170)
self.label2 = Label(self.pwindow,width=15,text = "分钟")
self.label2.place(x=570,y=170)
        
self.label3 = Label(self.pwindow,width=15,text = "开始时间")
self.label3.place(x=410,y=190)
self.label4 = Label(self.pwindow,width=15,text = "结束时间")
self.label4.place(x=410,y=220)

self.label5 = Label(self.pwindow,width=15,text = "数据1范围")
self.label5.place(x=410,y=250)
self.label6 = Label(self.pwindow,width=10,text = "<")
self.label6.place(x=540,y=250)
self.label7 = Label(self.pwindow,width=15,text = "数据2范围")
self.label7.place(x=410,y=280)
self.label8 = Label(self.pwindow,width=10,text = "<")
self.label8.place(x=540,y=280)

self.button_2 = Button(self.pwindow,width=15, text="自动生成数据", bg="yellow",command=self.rand_num)
self.button_2.place(x=480,y=390)

#开始时间 小时
self.Thour1 = ttk.Combobox(self.pwindow,width = 5)
self.Thour1.pack()
self.Thour1["value"] = ("00","01","02","03","04","05","06",\
                         "07","08","09","10","11","12",\
                         "13","14","15","16","17","18",\
                         "19","20","21","22","23")
self.Thour1.current(9)   
self.Thour1.place(x=500,y=190)
#开始时间 分钟
self.Tmin1 = ttk.Combobox(self.pwindow,width = 5)
self.Tmin1.pack()
self.Tmin1["value"] = ("00","05","10","15","20","25",\
                         "30","35","40","45","50","55")
self.Tmin1.current(0)
self.Tmin1.place(x=600,y=190)
 #结束时间 小时
self.Thour2 = ttk.Combobox(self.pwindow,width = 5)
self.Thour2.pack()
self.Thour2["value"] = ("00","01","02","03","04","05","06",\
                         "07","08","09","10","11","12",\
                         "13","14","15","16","17","18",\
                         "19","20","21","22","23")
self.Thour2.current(10)
self.Thour2.place(x=500,y=220)
 #结束时间 分钟
self.Tmin2 = ttk.Combobox(self.pwindow,width = 5)
 self.Tmin2.pack()
self.Tmin2["value"] = ("00","05","10","15","20","25",\
                         "30","35","40","45","50","55")
self.Tmin2.current(0)
self.Tmin2.place(x=600,y=220)
#数据1范围 min
self.wendu1 = ttk.Combobox(self.pwindow,width = 5)
self.wendu1.pack()
self.wendu1["value"] = ("2.0","3.0","4.0","5.0","6.0","7.0","8.0")
self.wendu1.current(0)
self.wendu1.place(x=500,y=250)
#数据1范围 max
self.wendu2 = ttk.Combobox(self.pwindow,width = 5)
 self.wendu2.pack()
self.wendu2["value"] = ("2.0","3.0","4.0","5.0","6.0","7.0","8.0")
self.wendu2.current(6)
 self.wendu2.place(x=600,y=250)
#数据2范围 min
self.shidu1 = ttk.Combobox(self.pwindow,width = 5)
 self.shidu1.pack()
self.shidu1["value"] = ("35","40","45","50","55","60","65","70","75")
self.shidu1.current(0)
self.shidu1.place(x=500,y=280)
#数据2范围 max
self.shidu2 = ttk.Combobox(self.pwindow,width = 5)
self.shidu2.pack()
self.shidu2["value"] = ("35","40","45","50","55","60","65","70","75")
self.shidu2.current(8)
self.shidu2.place(x=600,y=280)

7、最重要的就是添加数据启动开关了

self.button_2 = Button(self.pwindow,width=15, text="自动生成数据", bg="yellow",command=self.rand_num)
self.button_2.place(x=480,y=390)

self.label9 = Label(self.pwindow,width=15,text = "选择数据来源:")
self.label9.place(x=430,y=450)
        
self.label10 = Label(self.pwindow,width=15,text = "选择添加数据:")
self.label10.place(x=430,y=480)

self.button_3 = Button(self.pwindow,width=12,text="查看数据", bg="yellow" ,command=self.look_data)
self.button_3.place(x=440,y=520)

self.button_4 = Button(self.pwindow,width=12,text="开始添加", bg="yellow" ,command=self.add_data)
self.button_4.place(x=550,y=520)

最后,界面就是这个样子(先走着,后面再美化)

本期就到这里,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值