我正在扩展CTabCtrl
但是当我在扩展对象上调用InsertItem
时,无法插入任何选项卡。谁知道为什么会这样。我做错了什么?
class MyTabControl : public CTabCtrl
{
public:
MyListControl m_listCtrl;
void switchInterface(IDataProvider *provider);
public:
MyTabControl();
~MyTabControl();
afx_msg void OnGetDispInfo(NMHDR *pNMHDR, LRESULT *pResult);
protected:
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
DECLARE_MESSAGE_MAP()
};
如果我从消息映射中删除ON_WM_CREATE()宏,那么我可以添加选项卡。 OnCreate函数的实现包含m_listCtrl.Create()函数调用,如果成功创建列表控件则返回0。这有什么问题?
答案 0 :(得分:0)
CTabCtrl
课程非常陈旧且功能不佳;当用户自己从一个选项卡切换到另一个选项卡时,您将必须执行控件的所有显示/隐藏逻辑。我建议你改为CMFCTabCtrl
。