• 3959阅读
  • 4回复

[提问]菜鸟请教:QWidgetFactory::create()无法弹出Dynamic Dialog [复制链接]

上一主题 下一主题
离线bluemood
 
只看楼主 倒序阅读 楼主  发表于: 2012-02-29
QT自带的例程,源程序如下:
void MainForm::creditDialog()
{
       Receiver *receiver=new Receiver;
       QDialog *creditForm=(QDialog *) QWidgetFactory::create("../credit/creditformbase.ui",receiver);
       receiver->setParent(creditForm);
       if (creditForm->exec())
       {
              QSpinBox *amount=(QSpinBox *) creditForm->child("amountSpinBox","QSpinBox");
              if (amount)
                   ratingTextLabel->setText(amount->text());
        }
        delete receiver;
        delete creditForm;
}
这是MainForm里的slot函数,编译能通过,可是运行的时候,只要click  MainForm的signal pushbutton,MainForm就退出了,根本无法调出"../credit/creditformbase.ui",到底是为什么啊?
离线bluemood
只看该作者 1楼 发表于: 2012-02-29
就这个问题纠结了几天了,求高人耐心点拨一下,不甚感激!!!
离线robertkun

只看该作者 2楼 发表于: 2012-02-29
代码提供的太少了,,不清楚问题出在哪里,自已加断点,试试走到了哪一步.
                                              简单的生活使人快乐!
离线rcyboom

只看该作者 3楼 发表于: 2012-02-29
是不是路径不对啊?:create("../credit/creditformbase.ui",receiver);
用绝对路径试试
离线bluemood
只看该作者 4楼 发表于: 2012-03-01
试过用绝对路径,但是用绝对路径的话,编译完成后运行应用程序,只要click连接该slot的button,电脑就死机了。反正就是无法弹出要调用的dialog.
快速回复
限100 字节
 
上一个 下一个