оле*_*гов 3 python pyqt pyinstaller python-3.x pyqt5
我想通过python将一个简单的yes / no消息框创建为一个可执行文件。使用pyqt5并尝试使用pyinstaller创建可执行文件。
TypeError: an integer is required (got type bytes).
Run Code Online (Sandbox Code Playgroud)
使用命令后 pyinstaller <scriptname.py>
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QMessageBox , QDesktopWidget
from PyQt5.QtGui import QIcon
from PyQt5.QtCore import pyqtSlot
class App(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def center(self):
# geometry of the main window
qr = self.frameGeometry()
# center point of screen
cp = QDesktopWidget().availableGeometry().center()
# move rectangle's center point to screen's center point
qr.moveCenter(cp)
# top left of rectangle becomes top left of window centering it
self.move(qr.topLeft())
def initUI(self):
self.center()
buttonReply = QMessageBox.question(self, 'PyQt5 message', "Do you like PyQt5?",
QMessageBox.Yes | QMessageBox.No | QMessageBox.Cancel, QMessageBox.Cancel)
if buttonReply == QMessageBox.Yes:
print('Yes clicked.')
if buttonReply == QMessageBox.No:
print('No clicked.')
if buttonReply == QMessageBox.Cancel:
print('Cancel')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = App()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
小智 6
我找到了答案在这里在别人的评论。
尝试使用与python 3.8兼容的最新版本。
pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz
Run Code Online (Sandbox Code Playgroud)
这个解决方案对我有用
| 归档时间: |
|
| 查看次数: |
663 次 |
| 最近记录: |