我有一個MFC應用程序,它具有從CTabCtrl繼承的類,在我的Main Dialog :: OnInit()方法上。控件在CTabCtrl中處理MFC
tabCtrl.InsertItem(0, _T("Tab 1"));
tabCtrl.InsertItem(1, _T("Tab 2"));
tabCtrl.InitDialogs();
tabCtrl.ActivateTabDialogs();
tabCtrl.ShowWindow(SW_SHOW);
標籤ctrl是從CTabCtrl繼承的類變量,方法InitDialogs是:
m_Dialog[0]->Create(m_DialogID[0], this);
m_Dialog[1]->Create(m_DialogID[1], this);
m_Dialog[0]->ShowWindow(SW_SHOW);
m_Dialog *是同時包含,我從資源類繪製的對話框類。
我看到這兩個標籤,因爲我畫它,當我運行該程序,但是當我這樣做
UpdateData(TRUE);
valueTest = "tEST";
UpdateData(FALSE);
我得到一個斷言失敗的錯誤。我的DoDataExchange被調用,它看起來像:
void ConfigDialog::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT1, valueTest);
}
我一直是這樣strugling好幾天了,我只能夠發現誰沒有在他們裏面的任何控件虛設接線片的例子。有沒有我失蹤的步驟?
更新:斷言錯誤顯示這個
微軟的Visual C++運行時庫--------------------------- 調試斷言失敗!程序:C:\ Windows \ SYSTEM32 \ mfc140d.dll文件: f:\ dd \ vctools \ vc7libs \ ship \ atlmfc \ src \ mfc \ wincore.cpp行:4355對於 關於程序如何導致斷言失敗見 在Visual C++文檔上斷言
而且它無法的UpdateData(TRUE)句子
什麼是你的實際問題?你看到斷言失敗? –
我的問題是,我無法更改控件的屬性,當我嘗試這樣做時,我得到一個斷言失敗。 –
請發佈斷言對話框的**精確**錯誤消息。您可以使用[Ctrl] + C複製文本。屏幕截圖可以提供幫助,但這不是必需的。 – IInspectable