您的位置:首页 > 其它

控件的动态添加与消息响应

2007-03-19 19:26 381 查看
看到一些软件应用都是属于界面与功能无关的方式,界面独立出来,对于二次开发和重用比传统的软件开发方式要简单得多了,于是空闲时候也做了一个相关的软件出来,利用ini配置文件记录界面和控件消息响应,可以手动修改、添加、删除控件和对应功能。

以Button控件为例,创建一个独立的按键非常简单,
CMyBtn* pBtn=new CMyBtn();
if(!pBtn->Create(str,WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON ,
rt,this,BTNID+i))
return;
这样只是单独的创建一个框架出来,如果要做消息响应,就需要指定其对应CtrlID
pBtn->SetDlgCtrlID(BTNID+i);

CMyBtn是一个CButton的继承类,重载OnClicked()响应函数,可以添加对其自身CtrlID的获取
int nID=GetDlgCtrlID();

得到了每个Button的id,就可以让它们执行不同的功能函数了。

ok,这样就做到了对动态生成控件的前瞻控制,然后做一个功能动态链接库,在里面生成相关的执行函数,利用ini配置文件记录这些内容,下次执行该软件的时候,就能达到自己的预期功能了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: