• 5024阅读
  • 3回复

QT4程序调用过程请教 [复制链接]

上一主题 下一主题
离线dinotiger510
 
只看楼主 倒序阅读 楼主  发表于: 2009-09-02
各位大虾:
    我很想知道QT4中,ui文件生成ui_name.h文件如何控制生成的位置?
    现在我是准备将一个pro中的N个Form进行规范控制。先详细说明:每个Form有.h .cpp .ui文件,然后将每一个form放在一个目录文件夹下。然后修改pro文件,这样整个程序都能执行。但生成的moc与ui_name.h 文件我没法控制其生成的位置,moc文件默认是生成在debug目录或者release目录下,ui_name.h文件是默认生成在程序目录下。我也尝试过通过修改工程文件中文件的"设置"修改生成moc与ui_name.h文件的位置。生成的文件是生成到了指定的目录,但我发现程序链接时仍然需要debug下有moc文件,程序目录下有ui_name.h文件。
    所以,请问各位大虾,知道QT程序执行时调用moc与调用ui_name.h 文件是在那里进行控制的?
    需要说明:我是使用QT Creator进行界面设计的。所以每次qmake后,生成的工程文件又会将前面对moc,ui_name.h文件生成位置的设置等重写,从而失效。

    说了一堆,也不知道大虾理解到了没。我主要就是想对整个工程进行文件规范放置,现在就是遇到moc,ui_name.h两种生成文件不会控制。希望哪位大虾知道,请不吝赐教。谢谢。
离线dinotiger510
只看该作者 1楼 发表于: 2009-09-02
举例说明:
我的一个Form文件放在工程文件test下,test下就是main.cpp,一个pro文件,一个image放的很多图标文件,再一个就是一个Form,我将创建的一个Form放在一个frmPage文件目录下,而不是直接放在test目录下。这样我的ui文件的路径就是test/frmPage/name.ui

但生成的ui_name.h文件又是生成在test目录下,所以ui_name.h中对pushbutton的图标的设置时的路径是"../image/*.png"。这个可能是由于ui文件生成ui_name.h时他的位置决定ui_name.h中控件的图标的设置的路径。所以这里就又问题了。在test目录下的ui_name.h文件的PushButton的图标设置路径是与test同级目录的image,而不是test目录下的子目录image。

所以,如果你明白的话,可以去看看我另一个帖子——QT4程序调用过程请教.

如果能指定生成的ui_name.h文件就生成在与ui文件同级目录下,那就很好了,这样就不会出现这样的路径问题。
离线dbzhang800

只看该作者 2楼 发表于: 2009-09-02
好好看看 qmake 的maunal,基本有你需要的全部东西
离线dinotiger510
只看该作者 3楼 发表于: 2009-09-08
谢谢,已解决。
快速回复
限100 字节
 
上一个 下一个