模式对话框正在后台进行
Modal Dialog Going on background
我在大型机中创建了一个模式对话框,用于显示错误。
但对话是在后台进行的。
按Alt键,我把它放在前面。这很烦人。不明白为什么会发生这种事!
以下是我如何生成对话框的代码行。
Sourde代码:
m_settingsDialog = std::make_unique<SettingsDialog>(this, activeTabIndex);
m_settingsDialog->DoModal();
请建议该怎么做。
RC:
IDD_DIALOG_SYSTEM_SETTINGS_CONTROL DIALOGEX 0, 0, 437, 191
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSY | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_TOPMOST | WS_EX_CONTROLPARENT
CAPTION "Dialog"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
END
On Size方法Impl:
void SettingsDialog::OnSize(UINT nType, int cx, int cy)
{
CDialog::OnSize(nType, cx, cy);
if (!m_mfcTabCtrl)
return;
CRect rect;
GetClientRect(rect);
m_mfcTabCtrl.MoveWindow(0, 0, rect.Width(), rect.Height());
}
构造函数很简单:
SettingsDialog::SettingsDialog(CWnd* pParent /*= nullptr*/, int activeTabIndex /*= 0*/)
: CDialog(SettingsDialog::IDD, pParent)
, m_activeTabIndex(activeTabIndex)
{
}
MFC体系结构(链接到MS Connect 1])出现故障。您可以在SettingDialog::OnInitDialog()中尝试SetWindoPos()。
SettingDialog::OnInitDialog()
{
:
SetWindowPos(&wndTopMost, 0, 0, 0, 0, SWP_SHOWWINDOW);
:
}
相关文章:
- 如何在Qbutton的帮助下更改Q对话框的宽度
- 当对话框被接受时,如何用参数调用槽
- WinAPI 在单击第一个对话框上的按钮控件并销毁第一个对话框后创建第二个对话框
- 如何多次询问来自QML对话框的输入?
- 选择文件对话框错误
- 自定义对话框(源自QDialog)不会关闭(Android)
- 如何在 MFC 对话框中使用 OnDraw
- 在C++中创建文件夹选取器对话框的最简单方法是什么?
- 从资源视图访问对话框时出现问题
- 如何检测窗口当前是否正在运行模式对话框?
- "最小化"按钮不会出现在 MFC 对话框中
- 如何获取QNetworkConfiguration UserChoice对话框?
- 表单显示对话框函数错误,并且不执行下面的语句
- 如何在 VC6 中的对话框中将图标设置为按钮
- C++/Win32 构造函数不使用从对话框获取的字符串初始化变量
- 在 Win32 应用中,如果未选择文件夹并且用户单击"确定",则文件夹选择对话框将关闭
- 在主窗口之前显示登录对话框并隐藏主窗口按钮
- 找不到没有具有类名 #32770 的窗口名称的父窗口的子窗口(对话框)
- 如何在主窗口标签的对话框中显示QLineEdit的输入
- 模式对话框正在后台进行