VC利用MFC写界面,当单击一个按钮弹出一个对话框,同时按钮变色,如蓝色,关闭弹窗后又恢复,程序怎么写
我已经用GetDlgItem(IDOK)->EnableWindow(FALSE)实现了按钮点击后变灰,但是本来按钮就是灰色的,也没有对比效果...
我已经用GetDlgItem(IDOK)->EnableWindow(FALSE)实现了按钮点击后变灰,但是本来按钮就是灰色的,也没有对比效果
展开
5个回答
展开全部
你说的是按钮的自定义皮肤吧?我用VC++写了个自定义皮肤的按钮,希望能给你一些参考,按钮皮肤是PNG格式的图片。
http://blog.csdn.net/renstarone/article/details/11177051
http://blog.csdn.net/renstarone/article/details/11177051
展开全部
ON_WM_CTLCOLOR() 消息 重绘按钮颜色
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
重载一下CButton类,让后自己在里面写,想让按钮成什么样子就什么样子
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我也遇到过同样的问题。
没变化也没有问题,只要是你要的灰显状态就可以了,其实不一定每个操作都一定要看出变化的,个人观点。
没变化也没有问题,只要是你要的灰显状态就可以了,其实不一定每个操作都一定要看出变化的,个人观点。
追问
GetDlgItem(IDOK)->EnableWindow(FALSE)这个函数不就实现了灰显效果了,可是和没有灰显效果的一样。老板要求按下去按钮要有明显的颜色变化,这个你做过没
追答
IDOK是要灰显的空间ID吧?
加上这句试试 UpdateData(false);或UpdateData(true);
不行的话自建一个控件再试试。
刚刚网上查的:当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用 UpdateData(FALSE);如果你希望知道用户在对话框中到底输入了什么,就应该在访问变量前调用UpdateData(TRUE)。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询