一直觉得窗口的非客户区绘制搞不懂,现在需要自绘一个CEDIT控件,需要自绘非客户区,有些问题求教高手:
1.怎么设置CEDIT边框的宽度,比如设左边框为20,OnNcCalcSize中尝试了下,看不到效果,求教???
2,怎么在NCPAINT中得到非客户区域,有人说是得到整个窗口大小,再求得客户区大小,两者相减??两者相减是用什么函数?相减后得到的不是矩形了吧!!??求指点
3.能不能把改变大小后的边框用bitmap自绘上自己想要的边框图片??比如边框是蓝色半圆角的??求指点,
有没有大牛给个实际的例子,越详细越好,万分感谢,我邮箱[email protected].
1.怎么设置CEDIT边框的宽度,比如设左边框为20,OnNcCalcSize中尝试了下,看不到效果,求教???
2,怎么在NCPAINT中得到非客户区域,有人说是得到整个窗口大小,再求得客户区大小,两者相减??两者相减是用什么函数?相减后得到的不是矩形了吧!!??求指点
3.能不能把改变大小后的边框用bitmap自绘上自己想要的边框图片??比如边框是蓝色半圆角的??求指点,
有没有大牛给个实际的例子,越详细越好,万分感谢,我邮箱[email protected].
//绘制非客户区
case WM_NCCALCSIZE:
if(wParam==true)
{
lpNc=(LPNCCALCSIZE_PARAMS)lParam;
lpNc->rgrc[0].top+=top;
lpNc->rgrc[0].bottom-=bottom;
lpNc->rgrc[0].left+=left;
lpNc->rgrc[0].right-=right;
}
return WVR_ALIGNLEFT|WVR_ALIGNBOTTOM;
break;
//改变非客户区
在你的edit外围包个边不就可以了