MFC ocx GetDlgItem的问题

我是学友 2016-12-12 02:51:51
我用MFC写了个ocx插件
在一个界面上拖了几个button 和一个animate control 控件
然后重写了OnShowWindow消息,但是有个问题,在这个函数里调用button的句柄都可以,但是animate control的不行

//控件调整大小位置在这个消息内
//
void DialogMain::OnShowWindow(BOOL bShow, UINT nStatus)
{
CDialog::OnShowWindow(bShow, nStatus);

// TODO: 在此处添加消息处理程序代码

//五个按钮组成的区域是一个整体,相对坐标为0 0
//各个按钮缝隙为5

int X = 0 + 825; //初始875
int Y = 0 + 150; //初始150

//位置和大小
CWnd *pWnd = GetDlgItem(IDC_BUTTON_UP);
pWnd->SetWindowPos(NULL,X+55,Y,50,50,NULL);

pWnd = GetDlgItem(IDC_BUTTON_LEFT);
pWnd->SetWindowPos(NULL,X,Y+55,50,50,NULL);

pWnd = GetDlgItem(IDC_BUTTON_RIGHT);
pWnd->SetWindowPos(NULL,X+110,Y+55,50,50,NULL);

pWnd = GetDlgItem(IDC_BUTTON_DOWN);
pWnd->SetWindowPos(NULL,X+55,Y+110,50,50,NULL);

pWnd = GetDlgItem(IDC_BUTTON_AUTO);
pWnd->SetWindowPos(NULL,X+55,Y+55,50,50,NULL);

//加载图片
HBITMAP hBitmap = LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_UP));
CButton *cbutton = (CButton *)GetDlgItem(IDC_BUTTON_UP);
cbutton->SetBitmap(hBitmap);

hBitmap = LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_LEFT));
cbutton = (CButton *)GetDlgItem(IDC_BUTTON_LEFT);
cbutton->SetBitmap(hBitmap);

hBitmap = LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_RIGHT));
cbutton = (CButton *)GetDlgItem(IDC_BUTTON_RIGHT);
cbutton->SetBitmap(hBitmap);

hBitmap = LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_DOWN));
cbutton = (CButton *)GetDlgItem(IDC_BUTTON_DOWN);
cbutton->SetBitmap(hBitmap);

hBitmap = LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP_AUTO));
cbutton = (CButton *)GetDlgItem(IDC_BUTTON_AUTO);
cbutton->SetBitmap(hBitmap);


//加载背景图片
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP_BK);
m_brush.CreatePatternBrush(&bmp);


PIC = GetDlgItem(IDC_ANIMATE_VIDEO);

}



我加了断点调试


莫非是在这个消息里animate control还未被加载?还是animate control需要单独的声明?大神指点一下
...全文
174 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
我是学友 2016-12-13
  • 打赏
  • 举报
回复
引用 1 楼 oyljerry 的回复:
这个控件ID是否正确,没有取到控件句柄?
找到原因了,要这一句执行完下一句做断点才能看到句柄的值
oyljerry 2016-12-12
  • 打赏
  • 举报
回复
这个控件ID是否正确,没有取到控件句柄?

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧