【问题标题】:I am extending CTabCtrl but but cant insert any tabs我正在扩展 CTabCtrl 但无法插入任何选项卡
【发布时间】:2016-04-09 07:46:14
【问题描述】:

我正在扩展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。这有什么问题?

【问题讨论】:

  • 显示更多代码。如果没有看到实现,就不可能说出什么是错误的。

标签: c++ mfc ctabctrl


【解决方案1】:

CTabCtrl 类非常陈旧,功能很差;当用户通过您自己的手从一个选项卡切换到另一个选项卡时,您将不得不执行控件的所有显示/隐藏逻辑。我建议您改为从CMFCTabCtrl 扩展。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-14
    • 2016-03-01
    • 2015-12-05
    相关资源
    最近更新 更多