我在cstatic上动态生成了一个cedit,现在怎么才能用onctlcolor 着色呢?还有一个问题就是怎么输入一个数字
展开全部
如果这种动态的CEdit在任意时刻只有一个处于显示状态,那可以采用隐藏/显示的方法来实现。在对话框上先放置一个编辑框,在初始化时隐藏,在需要时移动和显示这个编辑框。这样就可以利用对话框的OnCtlColor消息来设置编辑框颜色了。
如果有多个编辑框会同时处于显示状态,可以从CEdit派生一个类,然后利用 ON_NOTIFY_REFLECT 响应,由控件类自行处理WM_CTLCOLOR消息。在对话框上创建这个派生类,代替原来的CEdit
如果有多个编辑框会同时处于显示状态,可以从CEdit派生一个类,然后利用 ON_NOTIFY_REFLECT 响应,由控件类自行处理WM_CTLCOLOR消息。在对话框上创建这个派生类,代替原来的CEdit
更多追问追答
追问
大哥,那个CEDIT是一直就要有的,我做完这个还要移动Csatic和cedit控件,他们两个控件可以绑定在一块移动吗?
追答
如果CEdit是一直要的,为啥要动态创建?因为只要不是动态创建,就可以利用对话框的OnCtlColor响应来改变编辑框的颜色。
只要对CStatic和CEdit移动相同的量,界面上看起来就是一起移动的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询