{"id":17080,"date":"2023-12-15T11:06:39","date_gmt":"2023-12-15T03:06:39","guid":{"rendered":"https:\/\/www.zhidianwl.com\/zhidian\/?p=17080"},"modified":"2023-12-15T11:06:39","modified_gmt":"2023-12-15T03:06:39","slug":"pyqt%e5%a6%82%e4%bd%95%e5%bc%80%e5%8f%91%e5%ae%89%e5%8d%93app%ef%bc%9f","status":"publish","type":"post","link":"https:\/\/www.zhidianwl.com\/zhidian\/2023\/17080\/","title":{"rendered":"pyqt\u5982\u4f55\u5f00\u53d1\u5b89\u5353app\uff1f"},"content":{"rendered":"
PyQt\u662f\u4e00\u4e2a\u8de8\u5e73\u53f0\u7684\u5e93\uff0c\u53ef\u4ee5\u7528\u6765\u4e3a\u4e0d\u540c\u64cd\u4f5c\u7cfb\u7edf\u5f00\u53d1\u5e94\u7528\u7a0b\u5e8f\uff0c\u5305\u62ec\u684c\u9762\u7cfb\u7edf\uff08\u5982\uff1aWindows\uff0cMacOS\u548cLinux\uff09\u4ee5\u53ca\u79fb\u52a8\u7cfb\u7edf\uff08\u5982\uff1aAndroid\u548ciOS\uff09\u3002\u5728\u672c\u6559\u7a0b\u4e2d\uff0c\u6211\u4eec\u5c06\u4e86\u89e3\u5982\u4f55\u4f7f\u7528PyQt\u5f00\u53d1\u4e00\u4e2a\u7b80\u5355\u7684\u5b89\u5353\u5e94\u7528\u3002\u867d\u7136\u6211\u4eec\u5c06\u91cd\u70b9\u5173\u6ce8\u5b89\u5353\u5e73\u53f0\uff0c\u4f46\u662f\u8bb8\u591a\u6982\u5ff5\u4e5f\u9002\u7528\u4e8e\u5176\u4ed6\u5e73\u53f0\u3002<\/p>\n
# \u5f00\u53d1\u5de5\u5177\u548c\u73af\u5883\u8bbe\u7f6e<\/p>\n
\u5728\u5f00\u59cb\u6784\u5efa\u6211\u4eec\u7684PyQt\u5b89\u5353\u5e94\u7528\u4e4b\u524d\uff0c\u6211\u4eec\u9700\u8981\u786e\u4fdd\u5b89\u88c5\u4e86\u5fc5\u8981\u7684\u5f00\u53d1\u5de5\u5177\u548c\u8f6f\u4ef6\u3002\u4ee5\u4e0b\u662f\u4e3b\u8981\u6b65\u9aa4\uff1a<\/p>\n
1. Python\u548cPyQt\u5b89\u88c5\uff1a\u786e\u4fdd\u60a8\u7684\u8ba1\u7b97\u673a\u4e0a\u5df2\u7ecf\u5b89\u88c5\u4e86Python\u548cPyQt\u3002\u60a8\u53ef\u4ee5\u8bbf\u95eePython\u5b98\u65b9\u7f51\u7ad9\uff08https:\/\/www.python.org\/downloads\/\uff09\u548cPyQt\u5b98\u65b9\u7f51\u7ad9\uff08https:\/\/www.riverbankcomputing.com\/software\/pyqt\/download\uff09\u4e0b\u8f7d\u548c\u5b89\u88c5\u6240\u9700\u7248\u672c\u3002<\/p>\n
2. \u5b89\u88c5Java JDK\uff1a\u8981\u6784\u5efaAndroid\u5e94\u7528\u7a0b\u5e8f\uff0c\u60a8\u9700\u8981\u5b89\u88c5Java\u5f00\u53d1\u5de5\u5177\u5305\uff08Java JDK\uff09\u3002\u53ef\u4ee5\u4eceOracle\u7684\u5b98\u65b9\u7f51\u7ad9\u83b7\u5f97JDK\uff08https:\/\/www.oracle.com\/java\/technologies\/javase-jdk14-downloads.html\uff09\u3002<\/p>\n
3. \u5b89\u88c5Android Studio\uff1a\u6211\u4eec\u5c06\u4f7f\u7528Android Studio\u6765\u6784\u5efa\u548c\u6d4b\u8bd5\u6211\u4eec\u7684PyQt\u5e94\u7528\u3002\u60a8\u53ef\u4ee5\u4ece\u8fd9\u91cc\u4e0b\u8f7dAndroid Studio\uff08https:\/\/developer.android.com\/studio\uff09\u5e76\u9075\u5faa\u5b89\u88c5\u6307\u5357\u3002<\/p>\n
4. \u5b89\u88c5PyQt5-tools\uff1a\u5728\u60a8\u7684P<\/p>\n
ython\u73af\u5883\u4e2d\uff0c\u5b89\u88c5PyQt5-tools\u5e93\uff0c\u5b83\u5305\u542b\u7528\u4e8e\u8bbe\u8ba1\u548c\u7f16\u8bd1Qt UI\u6587\u4ef6\u7684Qt Designer\u548cQt\u7f16\u8bd1\u5668\u3002\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u5373\u53ef\u5b89\u88c5\uff1a<\/p>\n<\/p>\n “`<\/p>\n pip install pyqt5-tools<\/p>\n “`<\/p>\n # \u521b\u5efa\u4e00\u4e2a\u7b80\u5355\u7684PyQt\u5e94\u7528<\/p>\n \u5728\u6211\u4eec\u5f00\u59cb\u5c06PyQt\u5e94\u7528\u7a0b\u5e8f\u79fb\u690d\u5230Android\u4e4b\u524d\uff0c\u6211\u4eec\u9996\u5148\u9700\u8981\u521b\u5efa\u4e00\u4e2a\u7b80\u5355\u7684PyQt\u5e94\u7528\u7a0b\u5e8f\u3002\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u793a\u4f8b\uff1a<\/p>\n 1. \u4f7f\u7528Qt Designer\u521b\u5efa\u4e00\u4e2a\u7b80\u5355\u7684UI\u6587\u4ef6\uff08\u5982\uff1amain_window.ui\uff09\uff0c\u5e76\u5305\u542b\u4e00\u4e2a\u6807\u7b7e\u548c\u4e00\u4e2a\u6309\u94ae\u3002<\/p>\n 2. \u5728Python\u4e2d\u52a0\u8f7dUI\u6587\u4ef6\u5e76\u521b\u5efa\u4e00\u4e2a`QMainWindow`\u5b50\u7c7b\uff0c\u5982\u4e0b\uff1a<\/p>\n “`python<\/p>\n import sys<\/p>\n from PyQt5.QtWidgets import QApplication, QMainWindow<\/p>\n from PyQt5.uic import loadUi<\/p>\n class MainWindow(QMainWindow):<\/p>\n def __init__(self):<\/p>\n super().__init__()<\/p>\n loadUi(“main_window.ui”, self)<\/p>\n self.button.clicked.connect(self.button_clicked)<\/p>\n def button_clicked(self):<\/p>\n self.label.setText(“Hello, Android!”)<\/p>\n if __name__ == “__main__”:<\/p>\n app = QApplication(sys.argv)<\/p>\n window = MainWindow()<\/p>\n window.show()<\/p>\n<\/figure>\n<\/p>\n