对话框窗口在达到完成(已接受);之前关闭;
Dialog Window closed before reaching to done(Accepted);
我有一些奇怪的东西,我有一个从MainWIndow触发的对话框窗口,如下所示:
//this is from main window
DialogUpdateContainer dialogUpdateContainer(this);
dialogUpdateContainer.getFileName(m_new_version_name);
if(dialogUpdateContainer.exec() == QDialog::Accepted )
{
return true;
}
在DialogUpdateContainer
我有一个简单的代码:
DialogUpdateContainer::DialogUpdateContainer( QWidget *parent) : QDialog(parent),
ui(new Ui::DialogUpdate)
{
ui->setupUi( this );
pHttpDownloadManager = new HttpDownloadManager();
connect(ui->buttonBox,
SIGNAL(accepted()),
this,
SLOT(OkSettingsHandler()));
connect(ui->buttonBox,
SIGNAL(rejected()),
this,
SLOT(CancelSettingsHandler()));
}
void DialogUpdateContainer::getFileName(QString& fileNameToDownload)
{
fileToDownload = fileNameToDownload;
}
void DialogUpdateContainer::OkSettingsHandler()
{
if(pHttpDownloadManager->downloadFile(fileToDownload))
{
done(Accepted);
}
}
void DialogUpdateContainer::CancelSettingsHandler()
{
done(Rejected);
}
现在的问题是,当我在对话框窗口中单击"确定"时,它会立即关闭,而无需等待pHttpDownloadManager->downloadFile(fileToDownload&);
完成它甚至永远不会完成(接受)
为什么
我希望它等到它完成了功能,然后才关闭。
非常奇怪:
if(dialogUpdateContainer.exec() == QDialog::Accepted ) {
return true;
}
正常:
if(dialogUpdateContainer.exec()==QDialog::Accepted ) {
return true;
}
相关文章:
- 如何检测窗口当前是否正在运行模式对话框?
- 在主窗口之前显示登录对话框并隐藏主窗口按钮
- 找不到没有具有类名 #32770 的窗口名称的父窗口的子窗口(对话框)
- 如何在主窗口标签的对话框中显示QLineEdit的输入
- C# - 显示对话框将所有者设置为非托管窗口
- Qt从主窗口打开对话框
- wxWidgets - 阻止 OS X 上的窗口模式对话框
- 有没有办法知道父窗口的类型(基于框架或对话框)?
- 如何以编程方式更改基于对话框的窗口的大小和位置?
- 模型对话框移动到主窗口后面的Qt错误
- CMFCButton在分层窗口的子对话框中未单击
- Qt - 创建主窗口前的非模态对话框
- 如何将信号从主窗口连接到对话框中的插槽
- 窗口对话框未打开
- 窗口/对话框过程可以在名称空间中吗
- Qt更改窗口内容/常规Qt窗口/对话框
- 如何使用activex控件在窗口/对话框中呈现html文件
- 一个基于c++窗口对话框的程序如何获取系统的一个状态
- 添加水平滚动条来调整窗口对话框的大小
- 有关所需窗口对话框资源类型的帮助