添加控件对话框不显示的问题

将公共控件或 Rich Edit 控件添加到对话框之后,在测试对话框时该控件不出现,或者对话框本身不出现。  

  

问题示例    

  

  1 、创建 Win32 项目,修改应用程序设置以创建 Windows 应用程序(不是控制台应用程序)。    

  2 、在资源视图中,双击 .rc 文件。

3 、在 Dialog 选项下,双击“关于”框。    

  4 、将一个“ IP Address Control ”添加到对话框。    

  5 保存并“全部重新生成”。    

  6 、执行程序。    

7 、在对话框的“帮助”菜单上,单击“关于”命令;没有显示任何对话框。  

有的系统不会出现该问题,但是在 Windows2000 下,可能会比较经常出现  

 

原因    

  目前,将下列公共控件或 Rich Edit 控件拖放到对话框上时,对话框编辑器不自动在项目中添加代码。当此问题发生时, Visual Studio 既不提供错误也不进行警告。必须手动为控件添加代码。  

  

  Slider Control Tree Control Date Time Picker   

Spin Control   Progress Control Animation Control 

IP Address Control Rich Edit Control Extended Combo Box   

  List Control Rich Edit 2.0Control CustomControl   

  

解决方法(公共控件的修复)

  

  为了在对话框上使用公共控件,需要在创建对话框之前调用 InitCommonControlsE    AFXInitCommonControls  

#pragma comment(ib, "comctl32.lib") // 此句的意思是让链接器在链接时寻找 comctl32.lib 库文件

INITCOMMONCONTROLSEX ipaddress={sizeof(ipaddress),ICC_INTERNET_CLASSES};

InitCommonControlsEx(&ipaddress);

DialogBoxParam(hinstExe, MAKEINTRESOURCE(IDD_DIALOG1),  NULL, Dlg_Proc, _ttoi(pszCmdLine));

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值