如何将Qt设计器与预先存在的Python代码一起使用?

时间:2016-06-21 15:12:45

标签: python qt user-interface interface qt-designer

我目前正在尝试在python中创建GUI。为此,我找到的方法是使用Qt Designer生成图形界面.ui,并使用PyQt4将其转换为.py,以编辑python中的函数。

我的问题是如何修改图形界面而不必再设置整个python代码?

实际上,如果我想要在界面中添加一个具有特定功能的按钮,我只想在.py中添加此功能,而不再重复整个.py

总之,我希望以后能够轻松更新我的界面。

你有什么想法吗?

提前谢谢! :)

1 个答案:

答案 0 :(得分:1)

<强>答案即可。 如果您要从Qt Designer(通过pyuic)修改代码,请了解该过程是一种方式:

@Test
public void test1() throws Exception {
    assertEquals(
            "{\"Root\":"
            + "{"
            + "\"Name\":\"Paul\","
            + "\"Age\":\"10\","
            + "\"Enabled\":\"true\""
            + "}"
            + "}",
            transformer.transformXmlToJson(
                    "<Root>"
                    + "<Name>Paul</Name>"
                    + "<Age>10</Age>"
                    + "<Enabled>true</Enabled>"
                    + "</Root>"));
}

pyuic(和uic,Qt / C ++等价物)是单向代码生成器。您不能使用现有的Python代码并为Qt Designer制作.ui文件。

<强>附录
也就是说,你有三个选择:

  • 坚持使用.ui文件。在Qt Designer中进行更改并进行pyuic转换。
  • 创建初始.ui文件以查找所需的方式,转换为Python,并从那里开始手动编码。我偶尔会这样做,但会保留.ui文件,所以我知道应该的样子。
  • 手工编写。根据我的经验,随着时间的推移和实践,编码人员发现这更自然,并且越来越依赖于Qt Designer。

就个人而言,我将在Qt Designer中创建一个复杂表单或对话框的模型以供视觉参考,但我自己完成所有编码。