0
我正在尝试动态创建一个按钮。我看过一些其他资源,使下面的代码:
MFC SDI动态创建按钮
BEGIN_MESSAGE_MAP(Cdynamic_button_sdiView, CView)
// Standard printing commands
ON_BN_CLICKED(MYBUTTONID, OnMyBN_Click)
END_MESSAGE_MAP()
void Cdynamic_button_sdiView::OnInitialUpdate()
{
CView::OnInitialUpdate();
m_Button.Create(_T("Rearrange"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(0, 0, 128, 32), this, MYBUTTONID); // here will create a button
}
我可以做一个按钮成功当我开始MFC应用程序。问题是,当我尝试通过单击打开一个新的文档:
我得到一个错误,我的应用程序在m_Button.Create(_T("Rearrange"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(0, 0, 128, 32), this, MYBUTTONID);
上有这种说法3个按钮里面的窗对话。其中一个会泄露大量有用的信息,包括代码未能满足的先决条件。 – IInspectable
为什么不在C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ VC \ atlmfc \ src \ mfc \ wincore.cpp'文件的第673行中放置断点并遵循Call Stack?这个信息非常清楚你应该遵循什么方向! – sergiol
虽然我怀疑你的代码有什么问题,但我不会告诉你,因为我希望你能对它进行调试!几年后,你会看到好处。 – sergiol