QT Creator设计器小部件无法从程序代码中访问

时间:2012-02-09 16:04:54

标签: c++ qt development-environment qt-creator

前言:我在通过Qt SDK安装的Mac OS X Lion上使用Qt Creator 2.4.1(基于Qt 4.7.4,64位)。

我正在开发一个项目,我在QCreator中使用设计器创建了一个UI。我有几个小工具没有问题。我通过从desiger调色板拖动它并在设计器中设置一些属性来创建一个新的QPushButton小部件。但是,我无法使用ui-> [widget]约定从源代码访问它。我可以按预期访问表单上的每个其他窗口小部件。对网站的搜索产生one similar issue,但指定的解决方案对我不起作用。

我试过了:

  • 清洁,完全重建
  • 重新运行qmake
  • 重新启动QCreator

我检查了ui元素生成的XML,并且包含了widget,并且包含正确的objectName和属性,但设计器的源代码部分却看不到它。

1 个答案:

答案 0 :(得分:0)

我通过删除当前工作目录,从版本控制中检出最新源以及创建新项目来解决此问题。经过进一步审查后,我发现由qmake编译生成的ui_mainwindow.h已被移动到源目录而不是构建目录,这必然导致与QCreator发生内部冲突,而QCreator不会重新生成它而只是复制旧的一个到build文件夹。如果我看到它并且节省了我开始新鲜的时间,那么删除文件可能会有效。