对窗口创建之前对窗口的外观的改变

首先我们可以改变应用程序的标题:可以在CMainFrame类中的PreCreateWindow(CREATESTRUCT& cs)函数内设置窗口的标题:
cs.style&=~FWS_ADDTOTITLE;(也可以这样子cs.style=WS_OVERAPPEDWINDOW;)
注明一下:因为在默认的情况之下window style是WS_OVERLAPPEDWINDOW 和 FWS_ADDTOTITLE styles的一个联合,其实cs.style&=~FWS_ADDTOTITLE对这个WS_ADDTOTITLE取反就是cs.style=WS_OVERAPPEDWINDOW的赋值是一个意思。
cs.lpszName="wangxf.com"
    我们可以在CMainFrame类中的PreCreateWindow(CREATESTRUCT& cs)函数内设置窗口的大小cs.cx=300;//窗口的长为300  cs.cy=200;//窗口的宽为200。
    也可以可以在CMainFrame类中的PreCreateWindow(CREATESTRUCT& cs)函数内用windows的MFC下的AfxRegisterWndClass()函数来修改窗口的一个窗口类的类型、光标、背景画刷和图标的。下面是他的原形:
AfxRegisterWndClass( UINT nClassStyle(窗口类的类型), HCURSOR hCursor(光标) = 0, HBRUSH hbrBackground(背景画刷) = 0, HICON hIcon(图标) = 0 (是默认的波浪式光标));
这时我们可以设置为
cs.lpszClass=AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW(水平重画与垂直重画),0(光标为默认值IDC_ARROW箭头光标),0(背景画刷为一个空的透明的画刷),LoadIcon(NULL,IDI_WARNING)(图标是一个警告图标));当然这样子编辑只会出现一个图标是一个警告图标在标题栏时,并没有看到箭头光标和一个透明的画刷,这是因为窗口有两个视图,一个是框架视图,还有一个是CIEW窗口视图,这里箭头光标和一个透明的画刷我们没有看到,是因为CIEW窗口视图在框架窗口视图前面,把这里的光标和背景画刷挡在了后面。所以我们在这里把光标的值与背景的值设置为O,要想改变光标和背景画刷。
于是,我们要到C**View类下的PreCreateWindow(CREATESTRUCT& cs)函数中去设置他的光标和背景画刷,如下:cs.lpszClass=AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW,LoadCursor(NULL,IDC_CROSS)(十字光标),(HBRUSH)GetStockObject(BLACK_BRUSH)(黑色背景画刷),0(View里不能设置图标,因为里面没有标题栏所以设置为O));
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值