中易网

MFC TabCtrl控件 InsertItem功能运行时报错的问题

答案:2  悬赏:80  
解决时间 2021-02-19 05:25
对话框里面有一个TabCtrl控件,我参考msdn的实例写了如下代码

第一种代码:
CTabCtrl m_tab;
m_tab.InsertItem(0, _T("第一页"));m_tab.InsertItem(1, _T("第二页"));
编译时完全没有任何问题,但一旦运行就出现下面图示的提示:

为了解决这个问题,我参照MSDN和一些网友的博客按照下列方法做了修正,试图消灭这个错误
第一套修正方案:
CTabCtrl m_tab;
TCITEM tcItem1,tcItem2; tcItem1.mask=TCIF_TEXT; tcItem1.pszText=_T("Tab #1"); m_tab.InsertItem(0,&tcItem1); tcItem2.mask=TCIF_TEXT; tcItem2.pszText=_T("Tab #2"); m_tab.InsertItem(0,&tcItem2); CDialogEx::OnInitDialog();

第二套修正方案: RECT lpRect; GetClientRect(&lpRect); m_tab.AdjustRect(FALSE, &lpRect); m_tab.MoveWindow(&lpRect, TRUE); m_tab.InsertItem(0, _T("第一页")); m_tab.InsertItem(1, _T("第二页"));
但依然出现了上边的报错消息,我感觉很是迷茫啊。。。求高手赐教。。。
这个是什么原因?

下面是我做这个实验的步骤:
1. 新建一个MFC工程, 取名MyTab, 选择Dialog based, 然后Finish.
2. 删除对话框上默认添加的三个控件. 添加Tab Control控件并在Property属性中设置ID为IDC_TABTEST 在More Styles里勾上Bottom. 调速尺寸使其布满整个对话框, 我这边Tab Control的尺寸最后为164X203. 在ClassWizard为其添加变量, 变量名为m_tab. 类型为CTabCtrl.
3. 在对话框的初始化函数OnInitDialog里面添加如下代码:
m_tab.InsertItem(0,"参数一"); //添加参数一选项卡
m_tab.InsertItem(1,"参数二"); //添加参数二选项卡
m_tab.InsertItem(2,"结果"); //添加结果选项卡



最佳答案
试试在OninitDialog里面先调用CDialogEx::OnInitDialog();
再继续你的代码。
如果还有问题,私信给你发送Q了,Q上详谈。
全部回答
ctabctrl m_tab最好不要声明为局部变量,还有可以单步跟踪调试一下。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
学了,苹果里的五角星明白了什么作文,300 字
路由器连到了电视上,电脑怎么不能用了?
粮食烘干机的技术参数
叶酸铁片中的叶酸有什么作用?
谁有Beatrich 的 About 的mp3下载?
dnf冰结师有让人冰冻的技能吗
小弟刚买了个HTC G3 怎么每次开机后就会发现
齐心美食城在哪里啊,我有事要去这个地方
到上海下高铁去那里住离迪士尼乐园近
开封原味传统胡辣汤怎么去啊,有知道地址的么
打印word文档时,方正小标宋字体的“三”字打
方超凡用韩语怎么写
什么都不知道歌词 什么都不知道LRC歌词
修改病句:现在,有些地区的群众,环保观念仍然
C’S蛋糕的欧包店地址在哪,我要去那里办事
推荐资讯
木公塘这个地址在什么地方,我要处理点事
落地衣架座心坏了怎么办
idea怎么设置tomcat编码
辽阳学电脑语言程序的培训机构有哪些
写春天景物的作文文410字
大众理发店(横渠村卫生所东)地址在哪,我要去
你可以委屈,可以痛哭,但不要让所有人都看到
抚松县工商局露水河分局怎么去啊,有知道地址
延安中学一本升学率
超级电容500F能做什么?
桂林桂爵汽车销售有限公司这个地址在什么地方
iPhone6手机助手哪个好用
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?