孙鑫教程笔记(六)

1. SetClassLong这个函数的能替换窗口类的信息,下面是替换图标的例子,在CMainFrame类中的OnCreate中最后输入

SetClassLong(m_hWnd,GCL_HICON,(LONG)LoadIcon(NULL,IDI_WARNING));则图标被替换成最后一个参数表示的图标

2. CMainFrame中修改光标和背景是没有意义的,因为Frame会被View遮盖,所以,要修改光标和背景需要在View类中修改。但是View类没有提供OnCreate这个消息响应函数,需要自己添加。 SetClassLong(m_hWnd,GCL_HCURSOR,(LONG)LoadCursor(NULL,IDC_CROSS));//修改光标

SetClassLong(m_hWnd,GCL_HBRBACKGROUND,(LONG)(HBRUSH)GetStockObject(BLACK_BRUSH));//修改背景

3. MAKEINTRESOURCE这个宏将一个整型值转化为一个资源

MAKEINTRESOURCE(IDI_ICON1);//这是把资源IDIDI_ICON1的图标转化为资源的写法

4. 获得应用程序的实例有三种方法

a)         AfxGetInstanceHandle()

b)         AfxGetApp()->m_hInstance

c)         MFC架构中,有一个类APP类已经实例化了一个变量:C***App theApp;所以我们在需要的地方生命一下就行了。例如在CMainFrame要使用这个函数,只需要

extern CModifyApp theApp就行了。然后调用theApp->m_hInstance;

5. 要获得一个介于0-2之间的数,可以这样

OnTimer()

{

         static int i=0

         i=++i%3;

}

6. 设置复选标记,可以用UpDateCommandUI 消息相应,然后用pCmdUI->SetCheck()

7. CTime获取系统时间CTime::GetCurrentTime

8. 设置状态栏信息CStatusBar::SetPaneText

9. 进度栏CProgressCtrl

10.              自定义消息使用

a)         消息在windows中用整数值表示,windows系统消息定义到了WM_USER,自己要定义消息的话,需要在这个基础上面加一个值。#define UM_PROGRESS WM_USER+1

b)         在头文件中自定义消息:#define UM_PROGESS WM_USER+1,有了消息之后我们需要作消息响应函数的声明,在头文件中进行afx_msg void OnProgress()

c)         消息响应函数声明之后需要做消息映射。ON_MESSAGE(UM_PROGRESS,OnProgress)

d)         消息映射之后要实现函数void CMainFrame::OnProgress(){}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值