带切分条的FrameWnd窗口的怎么样自绘制标题栏??困扰好多天了,项目在催,急需大家帮忙!!! 从FrameWnd派生的窗口带有Splitter,需要自己定义一个标题栏,标题栏的高度比普通的要矮些,而且标题栏的背景需要自己图片绘制.困扰好多天了,现在项目一直在催,急需大家帮忙解决!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 问题是我的窗口客户区有splitter,不能在窗口内直接绘制一个窗口来模拟的.需要在非客户区进行绘制啊.有人对非客户区绘制比较熟悉吗?做法类似工具条的做法吧,不会占用客户区的. 响应WM_NCCALCSIZE消息,增加客户区矩形的top值。 楼上cnzdgs 能不能再具体些啊?最好能写点代码的例子吧?我在自己手动加入该消息在CFrameWnd的派生类面时,给变量赋值时出现异常,不知道具体怎么处理? void CChildFrame::OnNcCalcSize(BOOL bCalcValidRects, NCCALCSIZE_PARAMS FAR* lpncsp) { if(NULL != lpncsp) { if(NULL != lpncsp->lppos) lpncsp->lppos->y =60; } CMDIChildWnd::OnNcCalcSize(bCalcValidRects, lpncsp);}这是我的做法但是不起作用啊? void CChildFrame::OnNcCalcSize(BOOL bCalcValidRects, NCCALCSIZE_PARAMS FAR* lpncsp) { if(NULL != lpncsp) { if(NULL != lpncsp->lppos) { pncsp->rgrc->top =30; } } }}找到了这个方法,但是窗口改变大小后,非客户区绘制刷新就会出问题了?怎么样在非客户区绘制和刷新啊?最好给出例子代码吧? void CChildFrame::OnNcCalcSize(BOOL bCalcValidRects, NCCALCSIZE_PARAMS FAR* lpncsp){ CMDIChildWnd::OnNcCalcSize(bCalcValidRects, lpncsp); lpncsp->rgrc[0].top += 30;}响应WM_NCPAINT消息,用CWindowDC对象绘制非客户区。 directx 新手求解答 新安装的VC怎么新建工程里面没有MFC向导? 我在listctrl里逐次加入图片,想用进度条显示加载的比例,如何实现呢? 我在VC上添加多媒体组件怎么出现错误啊???请大哥们帮忙解决!!! MFC写的ActiveX控件注册的问题?急救 绝对的高手请进,关于用底层访问数据库。 一个问题很困惑,大侠指点! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ACCESS数据库问题, 如何将菜单栏象IE5一样做到coolbar里面? 有关于skin++美化界面的问题 这行代码怎么解释? 大家都用什么样子的编辑器?
有人对非客户区绘制比较熟悉吗?
做法类似工具条的做法吧,不会占用客户区的.
我在自己手动加入该消息在CFrameWnd的派生类面时,给变量赋值时出现异常,不知道具体怎么处理?
{
if(NULL != lpncsp)
{
if(NULL != lpncsp->lppos)
lpncsp->lppos->y =60;
}
CMDIChildWnd::OnNcCalcSize(bCalcValidRects, lpncsp);
}这是我的做法但是不起作用啊?
{ if(NULL != lpncsp)
{
if(NULL != lpncsp->lppos)
{
pncsp->rgrc->top =30; }
}
}
}
找到了这个方法,但是窗口改变大小后,非客户区绘制刷新就会出问题了?
怎么样在非客户区绘制和刷新啊?最好给出例子代码吧?
{
CMDIChildWnd::OnNcCalcSize(bCalcValidRects, lpncsp);
lpncsp->rgrc[0].top += 30;
}
响应WM_NCPAINT消息,用CWindowDC对象绘制非客户区。