import sys
import PyWinMouse as mouse
from PyQt5.QtCore import Qt, QCoreApplication, QTimer
from PyQt5.QtWidgets import (QWidget, QPushButton,
QHBoxLayout, QVBoxLayout, QApplication, QDesktopWidget, QLabel)
from qtpy import QtCore
import MainFunction as mf
class Window(QWidget):
def __init__(self):
self.card = {"王": 2, "2": 4, "A": 4, "K": 4, "Q": 4, "J": 4, "10": 4, "9": 4, "8": 4, "7": 4, "6": 4, "5": 4,
"4": 4, "3": 4}
super().__init__()
self.setWindowTitle('记牌器')
self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
self.center()
start = QPushButton("开始")
screen = QPushButton("截取")
quits = QPushButton("退出")
start.clicked.connect(self.start)
screen.clicked.connect(self.screenshot)
quits.clicked.connect(QCoreApplication.instance().quit)
button_box = QHBoxLayout()
button_box.addStretch(1)
button_box.addWidget(start)
button_box.addWidget(screen)
button_box.addWidget(quits)
self.vbox = QVBoxLayout()
card = QLabel("牌型: 王 | 2 | A | K | Q | J | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 ")
self.number = QLabel(self.getcard())
self.vbox.addWidget(card)
self.vbox.addWidget(self.number)
self.setWindowFlag(Qt.FramelessWindowHint)
self.vbox.addLayout(button_box)
self.setLayout(self.vbox)
self.resize(570, 100)
def center(self):
# 获得窗口
qr = self.frameGeometry()
# 获得屏幕中心点
cp = QDesktopWidget().availableGeometry().center()
# 显示到屏幕中心
qr.moveCenter(cp)
self.move(qr.topLeft())
def handleDisplay(self):
self.number.setText(self.getcard())
QApplication.processEvents()
def start(self):
self.card = mf.HandCardRegnziion()
self.handleDisplay()
print("start")
def screenshot(self):
self.card = mf.OutCardRegnziion(self.card)
self.handleDisplay()
print("screen")
def getcard(self):
return "数量: {} | {} | {} | {} | {} | {} | {} | {} | {} | {} | {} | {} | {} | {} ".format(
self.card['王'], self.card["2"], self.card["A"], self.card["K"], self.card["Q"], self.card["J"],
self.card["10"], self.card["9"], self.card["8"], self.card["7"], self.card["6"], self.card["5"],
self.card["4"], self.card["3"])
# 因为边框去掉了,为了能拖动,只能重写一下鼠标事件了
def mousePressEvent(self, e):
if e.button() == Qt.LeftButton:
self.m_drag = True
self.m_DragPosition = e.globalPos() - self.pos()
e.accept()
def mouseReleaseEvent(self, e):
if e.button() == Qt.LeftButton:
self.m_drag = False
def mouseMoveEvent(self, e):
if Qt.LeftButton and self.m_drag:
self.move(e.globalPos() - self.m_DragPosition)
e.accept()
if __name__ == '__main__':
app = QApplication(sys.argv)
wd = Window()
wd.show()
sys.exit(app.exec_())
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
基于python+opencv实现的欢乐斗地主记牌器系统源码.zip (23个子文件)
基于python+opencv实现的欢乐斗地主记牌器系统源码
.vscode
settings.json 55B
ImageCapture.py 1KB
test3.png 2.9MB
CardRecognition..py 569B
main.py 3KB
handcard2.png 19KB
outcard1.jpg 3KB
.idea
vcs.xml 180B
misc.xml 194B
inspectionProfiles
profiles_settings.xml 174B
modules.xml 326B
.gitignore 39B
Digital-image-processing-Final-Work-1.iml 453B
test.png 2.92MB
test2.png 2.98MB
Tencent.py 1KB
handcard1.png 6KB
ImagePartition.py 2KB
__pycache__
ImagePartition.cpython-37.pyc 2KB
ImageCapture.cpython-37.pyc 1KB
Tencent.cpython-37.pyc 2KB
MainFunction.cpython-37.pyc 1KB
MainFunction.py 2KB
共 23 条
- 1
资源评论
- Solidguy2023-06-09资源值得借鉴的内容很多,那就浅学一下吧,值得下载!
- c993lxl2023-07-04这个资源值得下载,资源内容详细全面,与描述一致,受益匪浅。
mYlEaVeiSmVp
- 粉丝: 2218
- 资源: 19万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功