- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我创建了一个派生自 CDialog 的对话框(MFC 会自动执行此操作),但我必须覆盖 OnInitDialog
方法来初始化 ComboBox:
BOOL CLogin::OnInitDialog()
{
CDialog::OnInitDialog();
InitCommonControls();
if ( FillInCombo() != 0 )
//erro ao tentar ler leitoras
return TRUE;
return TRUE;
}
FillInCombo
方法调用 PCSC 类以使用所有可用的智能卡读卡器填充此组合。
但是,在调试时会发生奇怪的行为。在尝试选择组合上的项目时,它会自动关闭(它实际上会生成一个 OnClose 事件)并且 DoModal 返回 -1。
接下来,除非我清理解决方案并重新构建它,否则应用程序永远不会再次正确加载。
CLogin SmartNetData;
int ret = SmartNetData.DoModal();
switch ( ret )
{
case IDOK:
break;
case -1:
// strange error
OnOK();
return TRUE;
case IDABORT:
case IDCANCEL:
OnOK();
return TRUE;
};
感谢您对此提供的任何帮助。
后期编辑:我意识到问题是由于组合框引起的。我不确定为什么。我用 ListBox 替换了它,我没有遇到麻烦。
最佳答案
我怀疑您的 OnInitDialog() 中出了点问题。
我建议你去调试步骤:
a) 删除 OnInitDialog() 中的 InitCommonControls()
b) 删除 OnInitDialog() 中的 FillInCombo()
c) 删除 OnInitDialog() 中的 InitCommonControls() 和 FillInCombo()
一一删除后,检查DoModal返回值。
关于c++ - 从 CDialog 派生的 Dialog 在 DoModal (MFC/C++) 之后返回 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4659062/
不知道为什么我不能使用 CDialog 并在 cpp 文件中设置内存空间。它只在头文件中起作用。这不是一样的吗???谢谢 头文件: public: CDialog *m_pages[6];
我创建了两个 CDialog 类。我们称它们为 MainDialog 和 ExtraDialog。我希望 ExtraDialog 既可以通过 doModal 显示,也可以作为 MainDialog 中
我有一个 SDI 应用程序。在应用程序中有一个无模式对话框,用于显示一些消息,例如在工作期间与服务器通信。问题是,当对话框的父窗口设置为主框架时,ShowWindow 方法无法按预期工作。对话框似乎被
谁能告诉我如何在 MFC 的 Visual c++ 6.0 中创建一个非模态对话框并显示它?我写了这段代码: CDialog dialog; if (dialog.init(initializatio
我有一个长时间运行的任务和一个通知用户该任务正在运行的对话框。任务完成后,对话框会通知用户。 我想在使用 AfxBeginThread 创建的 Worker-Thread 中开始任务,当任务完成时,我
有没有办法从 CDialog 派生类(如 CWnd::m_hWnd 成员)中检索窗口句柄? 谢谢 最佳答案 HWND hWnd = GetSafeHwnd(); 应该可以解决问题,但是 CDialog
所以我有一个基于 MFC 的应用程序,它主要派生自 CDialog,带有一些控件等。 由于某些原因,它需要托管在另一个应用程序中,使用基于CView 的容器类。 所以必须有某种方式...在容器类中使用
我看过处理这个东西的绘图的代码 (DFCS_SCROLLSIEGRIP),但肯定有一种窗口样式,我可以应用它“免费”获取它。对吧? 最佳答案 代替更好的答案,我将发布我拥有的代码,该代码绘制尺寸夹点并
MS documentation (和 others )“明确”指出: ... Because the normal OnOk and OnCancel member functions of a C
这是我的问题:在我的解决方案中,我有 2 个项目,一个是我在其中创建了一个资源文件 (mylib.rc) 和一个对话框模板的库。然后我创建了一个继承 CDialog 并使用此模板的类。但是当我实例化它
我有一个 CDialog 类,我需要它被其他类的总和同时调用。根据我的理解,这应该可以工作,但它将是 Dialog 的同一个实例,并且我需要与调用类一样多的不同实例。这可能吗? 最佳答案 同时显示在屏
我不想使用“图形资源”来创建对话框! 我目前拥有的: CDialog *dlgWin = new CDialog(); dlgWin->Create("hello"); // <-- but thi
我在创建基于 CDialog 的窗口的某些代码时遇到问题。该代码上周运行良好。我所做的唯一更改是用散列数组替换 C++ 双端队列。我已经注释掉了调用 Create 方法的代码行,以允许我跳过加载窗口。
我正在处理一个 MFC 项目,我需要一个单独的循环,该循环将连续运行或每隔几秒运行一次,并且每次它可能需要也可能不需要运行对话框以从用户那里获取一些输入。我正在考虑使用 AfxBeginThread,
我有一个对话框,在按下“确定”按钮后,程序会使用对话框中的数据并绘制图表。我需要绘制绘图而不必像 IDOK 那样关闭对话框,因此需要应用按钮。绘制对话框的代码是, INT_PTR val = dlg-
如何在鼠标悬停时更改应用程序图标?我想在我的 CDialog 的系统菜单中放置一些菜单项,并且我希望当用户将鼠标悬停在它上面时图标突出显示,以表明它是一个用户界面组件(类似于最新版本的 firefox
有必要关闭所有对话框控件的默认字体的“ClearType”属性。可以通过设置对一个控件执行此操作 logfont.lfQuality = ANTIALIASED_QUALITY 有很多关于如何对模态对
我已经按照这个问题制作了一个非模态/无模态对话框: How to display a non-modal CDialog? 我在 VS2008 中使用 MFC/C++。与 MFC 和 C++ 相比,我
我创建了一个 SDI 应用程序并创建了一个对话框窗口。我想向该对话框添加一个工具栏,所以我这样编码: int CAddNewEmployee::OnCreate(LPCREATESTRUCT lpCr
我遇到过 CDialog::SetDefId,虽然它非常简单明了,它用于“按钮”,但我想将此功能与非按钮控件一起使用。我知道你必须按 Enter 或 Return 使对话框使用该 ID 如果我在 CD
我是一名优秀的程序员,十分优秀!