概述
一、环境
python3.X、PYQT5、
二、界面
1.简陋版本
使用说明:
本简陋版只能上传数据显示,且需要自己ipconfig一下查看本机ip地址
链接:
链接:https://pan.baidu.com/s/1ma72glNQORgRjlvr2hrhkg
提取码:cyrn
2.升级版本
说明:
1.请不要频繁连接,
2.请不要随意删除txt文件
三、简陋代码附录
import socket
from threading import Thread
import sys
from PyQt5.QtCore import Qt, QBasicTimer
from PyQt5.QtWidgets import QWidget, QApplication, QGridLayout, QLabel
SocketHost='0.0.0.0'
SocketPort=1234
class Connect():
getdatae=''
g_conn_pool = {} # 连接池
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 定义socket类型,网络通信,TCP
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((SocketHost, SocketPort)) # 套接字绑定的IP与端口
s.listen(10) # 开始TCP监听,监听1个请求
print("socket start!")
def accept_client(self):
while True:
client, info = Connect.s.accept() # 阻塞,等待客户端连接
# 给每个客户端创建一个独立的线程进行管理
thread = Thread(target=Connect.recive, args=(self, client, info))
# 设置成守护线程
thread.setDaemon(True)
thread.start()
def recive(self, client, info):
# conn,addr=client.accept() #接受TCP连接,并返回新的套接字与IP地址
print('Connectedby by ', info) # 输出客户端的IP地址
quitip = info
while 1:
try:
data = client.recv(2048) # 把接收的数据实例化
print(data)
data = data.decode('utf-8')
#data = eval(data)
txt_file = open("./data.txt", "w", encoding="utf-8") # 以写的格式打开先打开文件
txt_file.write(data)
txt_file.close()
print(eval(data))
except Exception as e:
print(e)
print("quit")
print(quitip)
client.close()
break
class Example(QWidget):
def __init__(self):
super().__init__()
self.timer =QBasicTimer()
self.timer.start(1000, self)
self.initUI()
def initUI(self):
grid = QGridLayout()
grid.setSpacing(10)
b='鼠标移动至此'
self.text = b
self.label = QLabel(self.text, self)
self.label.setGeometry(50, 50, 300, 200)
self.label.setWordWrap(True)
self.setStyleSheet("QLabel{color:rgb(225,22,173,255);font-size:50px;font-weight:normal;font-family:Arial;}")
grid.addWidget(self.label, 0, 0, Qt.AlignTop)
self.setMouseTracking(True)
self.setLayout(grid)
self.setGeometry(300, 300, 350, 200)
self.setWindowTitle('Event object')
self.show()
def timerEvent(self, event):
#print("timer running!")
txt_file = open("./data.txt", "r", encoding="utf-8") # 先打开文件
contents = txt_file.readlines()
txt_file.close()
text2 = str(contents)
self.label.setText(text2)
def connet():
c=Connect()
thread = Thread(target=c.accept_client)
thread.setDaemon(True)
thread.start()
return c
if __name__ == '__main__':
c=connet()
alid = QApplication(sys.argv)
ex = Example()
sys.exit(alid.exec_())
最后
以上就是失眠纸飞机为你收集整理的记录简单使用QT、socket做一个供使用at指令的esp8266连接显示界面的全部内容,希望文章能够帮你解决记录简单使用QT、socket做一个供使用at指令的esp8266连接显示界面所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复