如何将.ui文件转换为.py文件

时间:2014-03-08 08:06:55

标签: python user-interface pyqt qt-designer

此.ui文件由Qt Designer制作。这只是一个简单的用户界面。

在我查看过的网站上执行此操作的所有命令或代码都不适用于Windows。

4 个答案:

答案 0 :(得分:15)

pyuic工具在所有平台上的工作方式完全相同:

C:\>pyuic4 -h
Usage: pyuic4 [options] <ui-file>

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -p, --preview         show a preview of the UI instead of generating code
  -o FILE, --output=FILE
                        write generated code to FILE instead of stdout
  -x, --execute         generate extra code to test and display the class
  -d, --debug           show debug output
  -i N, --indent=N      set indent width to N spaces, tab if N is 0 [default: 4]
  -w, --pyqt3-wrapper   generate a PyQt v3 style wrapper

  Code generation options:
    --from-imports      generate imports relative to '.'
    --resource-suffix=SUFFIX
                        append SUFFIX to the basename of resource files
                        [default: _rc]

我怀疑“它不起作用”的原因是您尝试转换的.ui文件不在当前目录中。所以你需要首先cd到那个目录:

    C:\>cd C:\path\to\my\ui\files

然后运行pyuic:

    C:\path\to\my\ui\files\>pyuic4 -o ui_form.py form.ui

答案 1 :(得分:8)

在Windows中将.ui转换为.py

  1. 转到您的ui文件所在的目录。
  2. 按shift并右键单击鼠标。
  3. 点击(在这里打开命令窗口。
  4. 这将打开cmd。检查你的目录是什么 (pyuic4.bat)文件。通常是: C:\ Python34 \ LIB \站点包\ PyQt4的\ pyuic4.bat
  5. 写入cmd:
    C:\ Python34 \ Lib \ site-packages \ PyQt4 \ pyuic4.bat -x filename.ui -o filename.py(按回车)
    这将为.ui文件生成一个新文件.py 并在同一目录中
  6. 注意:    这个命令适用于python 3.4版本和PyQt4版本。    如果您使用其他版本,则应更改数字(例如PyQt5)

答案 2 :(得分:1)

在pyqt5中,您可以使用: 1.转换为不可执行的python文件:

pyuic5 -o pyfilename.py design.ui

2。转换为可执行的python文件:

pyuic5 -x -o pyfilename.py design.ui

以及资源diles(qrc): 1.将qrc转换为python文件:

pyrcc5 -o pyfilename.py res.qrc

Note:,如果您以错误的方式运行命令,您的ui文件将丢失。

答案 3 :(得分:0)

晚于永远,在Windows(.bat)上创建一个批处理文件,然后将以下内容粘贴到其中,并在与文件相同的目录中保存并运行。

@echo off
title .UI to .py files converter !
echo Generate Python files from .UI files!
pause
echo ""
echo ""
echo ""
echo ""
echo UI file Name
set /p UiName=Enter .UI file Name: 
echo ""
echo ""
echo ""
echo ""
echo PY file Name
set /p PyName=Enter .PY file Name: 
echo ""
echo ""
echo ""
echo Start Converting Files Please wait.



call python -m PyQt5.uic.pyuic -x "%UiName%" -o "%PyName%"

echo QRC file Name
set /p QrName=Enter .qrc file Name: 
echo ""
echo ""
echo ""
echo ""
echo PY file Name
set /p PiName=Enter .PY file Name: 
echo ""
echo ""
echo ""
echo Start Converting Files Please wait.

pyrcc5 -o "%PiName%" "%QrName%"

echo Job Completed.
pause