用户:家灵cAZd查看:0 回复:0 评论:0 创建时间:2022-07-24T14:47:16
【作品展示】

【作品介绍】
更新了一些东西
【作品源代码】
import sys
import webbrowser
from PySide2.QtWidgets import *
from PySide2.QtCore import *
from PySide2.QtGui import *
from PySide2.QtMultimedia import *
from ui_edit import Ui_Edit
from ui_24 import Ui_MainWindow
from ui_game2 import Ui_Game2
import random
class Game3(QMainWindow,Ui_Game2):
def __init__(self):
super().__init__()
self.setupUi(self)
self.setup()
def setup(self):
pass
class Game2(QMainWindow,Ui_Game2):
def __init__(self):
super().__init__()
self.setupUi(self)
self.setup()
def setup(self):
self.lineEdit.setReadOnly(True)
self.true_ = 0
self.false_ = 0
self.buttons = self.pbtn.buttons()
self.generate()
def generate(self):
self.button_yes = random.choice(self.buttons)
for i in self.buttons:
if i != self.button_yes:
i.setIcon(QIcon('土地.png'))
i.clicked.connect(self.false)
i.setIconSize(QSize(100, 100))
i.setCheckable(True)
self.button_yes.clicked.connect(self.true)
self.button_yes.setIcon(QIcon('地鼠.png'))
def true(self):
self.break_connections()
self.true_ += 1
self.lineEdit.setText(str(self.true_))
print('打中了','共打中'+str(self.true_)+'次')
self.generate()
def false(self):
self.break_connections()
self.false_ += 1
print('错了','共打错'+str(self.false_)+'次')
self.generate()
def break_connections(self):
for i in self.buttons:
i.clicked.disconnect()
class Game(QMainWindow, Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
self.setup()
def setup(self):
cards = [self.pbtn_1, self.pbtn_2, self.pbtn_3, self.pbtn_4]
for card in cards:
number = str(random.randint(1, 10))
card.setText(number)
def keyPressEvent(self, event):
if event.key() == Qt.Key_Return:
self.verify()
def verify(self):
answer = self.lineEdit.text()
try:
result = eval(answer)
if result == 24:
print('答对了')
self.setup()
else:
print('答错了')
self.lineEdit.setText('')
except:
self.lineEdit.setText('')
print('请输入算式')
class Edit(QMainWindow, Ui_Edit):
def __init__(self):
super().__init__()
self.setupUi(self)
self.setup()
def setup(self):
self.pbtn_start.clicked.connect(self.start)
self.pbtn_save.clicked.connect(self.save)
self.textEdit.setReadOnly(True)
def start(self):
self.pbtn_start.setEnabled(False)
self.textEdit.setReadOnly(False)
timer = QTimer()
timer.singleShot(60000*40,self.end)
def end(self):
self.pbtn_start.setEnabled(True)
self.textEdit.setReadOnly(True)
def save(self):
file = QFileDialog.getSaveFileName(caption='保存写作结果',filter='(*.txt)')[0]
text = self.textEdit.toPlainText()
with open(file,'w',encoding='utf-8') as f:
f.write(text)
self.textEdit.setText('')
class Tray(QSystemTrayIcon):
def __init__(self):
super().__init__()
self.setup()
self.show()
def setup(self):
self.icon = QIcon('sit.png')
self.setIcon(self.icon)
self.add_menu()
def add_menu(self):
self.game = Game()
self.game2 = Game2()
self.edit = Edit()
self.menu = QMenu()
self.setToolTip('作者信息网站https://shequ.codemao.cn/user/18477425')
self.menu.addAction(QAction('作者信息', self, triggered=self.author))
self.menu.addAction(QAction('退出', self, triggered=self.quit))
self.menu.addAction(QAction('40分钟打字练习', self, triggered=self.edit.show))
self.menu.addAction(QAction('小游戏24点', self, triggered=self.game.show))
self.menu.addAction(QAction('小游戏打地鼠', self, triggered=self.game2.show))
self.setContextMenu(self.menu)
def quit(self):
self.hide()
sys.exit()
def author(self):
webbrowser.open('https://shequ.codemao.cn/user/18477425')
if __name__ == '__main__':
app = QApplication(sys.argv)
window = Tray()
app.exit(app.exec_())
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn