2013-03-12 55 views
3

我正在为我制作的脚本制作一个GUI,经过研究发现pyqt会有所帮助。我现在已经制作了一个没有工作按钮的图形用户界面,但是它想要查看代码。如何在python中执行pyqt .ui代码?

我打开的cmd.exe和类型:

pyuic4 project.ui -o python.py 

它创造了我python.py脚本,它给我我需要的所有脚本,但是当我通过怠速运转或命令提示符它显示它正在运行,但没有GUI打开。难道我做错了什么?

另请注意,是pyqt适合用来创建一个简单的图形用户界面的窗口,或它是为移动开发?

这里的代码片段,我想编译和运行

from PyQt4 import QtCore, QtGui 

try: 
    _fromUtf8 = QtCore.QString.fromUtf8 
except AttributeError: 
    def _fromUtf8(s): 
     return s 

try: 
    _encoding = QtGui.QApplication.UnicodeUTF8 
    def _translate(context, text, disambig): 
     return QtGui.QApplication.translate(context, text, disambig, _encoding) 
except AttributeError: 
    def _translate(context, text, disambig): 
     return QtGui.QApplication.translate(context, text, disambig) 

class Ui_FileHash(object): 
    def setupUi(self, FileHash): 

回答

6

关于如何使用由pyuic4命令生成的代码检查this tutorial;

基本上,你需要这样做:

import sys 
from PyQt4.QtGui import QApplication, QDialog 
from ui_project import Ui_Name # here you need to correct the names 

app = QApplication(sys.argv) 
window = QDialog() 
ui = Ui_Name() 
ui.setupUi(window) 

window.show() 
sys.exit(app.exec_()) 

PyQt的是完全适用于Windows的GUI创建。

+0

我的文件目前project.ui,我想它成为project.py,你说我应该纠正名称,但我没有任何ui_project或ui_name。我试图把'import project.ui',但没有奏效。 – DrKhan 2013-03-12 14:04:35

+0

@DKKhan你执行的命令生成了一个.py文件,你需要把它的名字改为“ui_project” – 2013-03-12 14:06:25

+0

我必须让我的文件名混合起来,我已经添加了一个代码片段,我希望这显示了我所尝试的去做。 – DrKhan 2013-03-12 14:26:56

1

作为一个显着的增加,pyuic4接受“-p”或“--preview”参数将运行它的开箱预览UI文件:

pyuic4 -p project.ui 
0

如果检查pyuic4选项,-x选项是你缺少的选项。它将执行UI所需的代码添加到您的Python代码中。你只需要添加-x:

pyuic4 project.ui -x -o python.py

+0

我用这个,我得到了hello.py。当我试图像'python hello.py'这样执行时,我什么都看不到。小部件显示并关闭非常快。 – zinon 2016-09-10 15:11:43