我是Qt的新手,所以我真的不知道版本之间有多大的变化。我的小组成员没有多大帮助。我是否有一种无痛的方式将文件转换为正确版本的Qt?
答案 0 :(得分:4)
我要尝试的第一件事是在旧的Qt Designer中打开* .ui文件并尝试保存它们。如果它不想保存新打开的文件,我会做一些无关紧要的更改,比如将某个组件的某些属性更改为不同的值然后再返回。
但是,Qt Designer可能会抱怨它对于那个特定文件太旧了,就像UIC那样。在这种情况下,您必须手动编辑* .ui文件。它们是纯XML文件,因此可以相对容易地完成。首先打开它们并将版本属性更改为“4.2”或Qt 4.2使用的任何内容,以防它与Qt版本不同。尝试编译。 UIC可能会抱怨4.2不支持或以不同方式指定的某些属性。如果不需要,您必须删除该属性,或者以4.2兼容的方式指定它们。为了弄清楚如何操作,使用该特定属性从头开始创建一个简单的UI,并将其保存到新文件中。打开它,看看它是如何在4.2中完成的。然后编辑您的文件以符合该格式。
我过去做过这个(虽然不是4.7到4.2),它比听起来容易。我只需要改变指定一些属性的方式。边缘或类似的东西,我不记得确切。我甚至能够用正则表达式代替我认为。
答案 1 :(得分:1)
我今天做了这个,看起来新的设计师.ui文件在顶部有这一行:
<?xml version="1.0" encoding="UTF-8"?>
如果删除此行,则下一行应为:
<ui version="4.0">
然后qmake和uic应该正常工作。
答案 2 :(得分:0)
问题是.ui文件。尝试在Qt设计器中打开它们并让它转换它们。