首页| 论坛| 消息

标题:QFileDialog*filedlg后如何关闭filedlg??
作者:yfx2003
日期:2006-05-15 23:25
内容:

QFileDialog*filedlg后如何关闭filedlg??
问题如下:
QFileDialog*filedlg = new QFileDialog( this, "as" );
if( filedlg->exec() == QDialog::Accepted )
{
// code for dealing with process
;
;
}
现在, 当filedlg弹出后,我选择了 OK 等按钮后, 这个对话框却没有办法关闭?? 如下调用:
filedlg->accept();// 提示说是QDialog的protect,不能使用!
该怎么办?
非常感谢!!


#1 [nanhu_007 05-16 14:04]
QFileDialog是QDialog继承下来的,“在qtopia里”它的执行方式是利用execDialog来实现的,执行之后dialog就会hide掉:
QFileDialog*filedlg = new QFileDialog( this, "as" );
if( QPEApplication::execDialog(filedlg )== QDialog::Accepted )
{
}
////////////////////////////////////////////////
不知道你哪里的情况是怎么样的。
#2 [yfx2003 05-16 15:26]
实际上我的和2楼的写法是一样的
但是,我的点击了ok后它就是不隐藏啊?!!!
应该不是我的写法有问题的?!
#3 [yfx2003 05-16 23:06]
现将解决办法列除(可以参考手册)
QString filename = QFileDialog::getFileSaveDialog(""此处省略...);
if ( !filename.isEmpty() )
{
// like the user clicks ok bt
}
else
{
// click cancel
}

回复 发表
主题 版块