ocx控件移动的问题

我是学友 2016-12-07 03:49:26
刚开始学着做,在一个dialog上面有几个button
调用CWnd 类的SetWindowPos函数总是报异常

DialogMain::DialogMain(CWnd* pParent /*=NULL*/)
: CDialog(DialogMain::IDD, pParent)
{


CWnd *pWnd ;
pWnd = GetDlgItem(IDC_BUTTON_UP);
pWnd->SetWindowPos(NULL,0,0,50,50,SWP_NOZORDER);
}


然后断点跟踪发现pWnd 里的m_hWnd值有问题,哪位大神知道为什么啊,挺简单的代码跑不起来

...全文
191 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
三岁、就很帅 2016-12-07
  • 打赏
  • 举报
回复
加我qq吧 1090947849
我是学友 2016-12-07
  • 打赏
  • 举报
回复
引用 3 楼 swwllx 的回复:

CWnd *pWnd = GetDlgItem(IDC_STATIC_SHOW);
if (pWnd && IsWindow(pWnd->m_hWnd))
{
pWnd->SetWindowPos(NULL,cx/2-200,0,800,80,NULL); // 你自己设置
、、pWnd->ModifyStyle(SS_LEFT|SS_RIGHT,SS_CENTER,TRUE);
}

你看看你的IDC_BUTTON是否正确 搜索下



这个button控件是没问题的,就是搞不懂为啥一直获取不到m_hWnd
三岁、就很帅 2016-12-07
  • 打赏
  • 举报
回复
IDC_BUTTON_UP 有可能你改了 但是你程序里面还是 IDC_BUTTON
三岁、就很帅 2016-12-07
  • 打赏
  • 举报
回复
CWnd *pWnd = GetDlgItem(IDC_STATIC_SHOW); if (pWnd && IsWindow(pWnd->m_hWnd)) { pWnd->SetWindowPos(NULL,cx/2-200,0,800,80,NULL); // 你自己设置 、、pWnd->ModifyStyle(SS_LEFT|SS_RIGHT,SS_CENTER,TRUE); } 你看看你的IDC_BUTTON是否正确 搜索下
我是学友 2016-12-07
  • 打赏
  • 举报
回复
引用 1 楼 swwllx 的回复:
你这段代码位置放错了
你这是初始化的时候 你的控件还没出来 句柄当然为空 报错了
添加Onsize函数 WM_SIZE 把你这段代码放Onsize里面



添加了WM_SIZE 消息还是不行啊
三岁、就很帅 2016-12-07
  • 打赏
  • 举报
回复
你这段代码位置放错了 你这是初始化的时候 你的控件还没出来 句柄当然为空 报错了 添加Onsize函数 WM_SIZE 把你这段代码放Onsize里面
1.动画及多媒体播放类 anigif6.ocx 动画播放gif文件控件 gif89.dll 又一个播放gif文件的动态链接库 gifPlayer.ocx 又一个播放gif文件控件 flash.ocx 能播放flash动画文件 Digital.ocx 数码显示数字、时间,挺漂亮 MovingChar.ocx 循环移动的字幕 wmp.ocx 提供的ActiveX控件制作媒体播放器 2.界面元素类 2.1.窗口类 asBubbleForm.ocx 显示图片信息提示的窗体控件,外形似帮助提示,弹出气泡式对话框 2.2.分隔条类 splitbar.ocx 窗口分割控件 2.3.工具条类 vbalExpBar6.ocx 不明,没用过 2.4.按钮类 CurtButton.ocx CurtButton 多风格按钮控件 JwldButn2b.ocx 漂亮的VB按钮,可以随意改变按钮表面和按下去时的边框颜色 SmartXpButton.ocx 一个VC开发的美观的XP按钮播放activeX控件 2.5.选项卡类 tabctl32.ocx 圆角选项卡控件 prjXTab.ocx 又是一款圆角选项卡控件,类似tabctl32.ocx 2.6.列表框类 SBLIST.OCX 界面很酷的列表框控件 vbalIml6.ocx 类似ImageList的图象控件 2.7.菜单类 asAssistantPopup.ocx 弹出管理菜单 2.8.皮肤类 YFSkins.ocx 非常美观的皮肤控件 VBOCX.OCX 允许你的应用程序的标题栏颜色为任意渐变色 3.系统类 asctrls.ocx 系统控件,用来安装active控件的,一般用不着 dmview.ocx 磁盘管理控件 fldrvw71.ocx 目录查看、选择、也可以显示文件,功能很强,但可能需要注册 proctexe.ocx Intel 程序纹理,进程信息查询 shlobj71.ocx 以系统默认的正常形式打开程序 sysmon.ocx 系统性能监视的ActiveX控件 Wxini.ocx 好象是读取ini文件的,没用过 4.内置类(VB或Windows系统自带的) combobox.ocx 下拉选择控件 comct232.ocx Animation1动画和UpDown comctl32.ocx 包含toolbar、treeview、listview、imagelist等(5.0) comdlg32.ocx 对话框 dbgrid32.ocx vb5的数据网格控件 dblist32.ocx vb5的数据列表控件 hhctrl.ocx Microsoft帮助文档界面相关文件 msdxm.ocx 媒体播放 msflxgrd.ocx 数据网格控件 mshflxgd.ocx 数据网格控件,是对msflxgrd.ocx的升级 msscript.ocx ScriptControl控件 mswinsck.ocx 网络通讯控件 richtx32.ocx 富文本框控件,增强文本数据显示 wshom.ocx 是Windows本地脚本对象运行时相关文件 5.未归类 MoveLabel.ocx 不明,没用过 LeftMenu.ocx 不明,没用过 daxctle.ocx 不明,没用过 chklsb26.ocx 好象超级兔子软件用到 ?gktube.ocx 孤独剑漏掉了 ?NewCombo.ocx 孤独剑漏掉了 tdc.ocx 相关表列数据ActiveX控件,没用过

3,248

社区成员

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

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