MFC学习笔记一

<一>滑块:
CSliderCtrl
常用成员函数:
SetLineSize() GetLineSize()
SetPageSize() GetPageSize()
SetRangeMax() GetRangeMax()
SetRangeMin() GetRangeMin()
SetRange() GetRange()
SetPos() GetPos()


<二>列表控件:
CListCtrl
四种视图:大图标、小图标、列表、详细信息
CImageList(图像列表控件)
添加列:
m_list.InsertColumn(0, _T("第一列"), LVCFMT_LEFT, 120);
设置显示模式:
m_list.ModifyStyle(LVS_TYPEMASK, LVS_REPORT);




<三>日期时间选择控件
CTime
Date Time Picker
CDate Time Ctrl
CTimeSpan  计算两个时间之间相差的距离


<四>菜单
窗体菜单、快捷菜单
CMenu


<五>16色工具栏
ToolBar 资源->16色图片
CToolBar
消息映射


<六>真彩色工具栏
Toolbar 资源
Bitmap 资源-> 24位真彩色图片
CToolbar
CImageList


<七>状态栏
CStatusBar
常见成员函数
m_status.Setinclicators()
m_status.SetPaneinfo()
m_status.SetPaneText()


<八>模态对话框和非模态对话框
模态对话框(Modal)
d.DoModal();
非模态对话框(Modaless)
p->Create(IDD_DIALOG, this);
p->ShowWindow(SW_SHOW);


<九>文件对话框
打开文件对话框、保存文件对话框
CFileDialog


<十>字体、颜色对话框
字体对话框 ->CFontDialog
颜色对话框 ->CColorDialog
富文本框 ->CRichEdit   也叫格式文本框


<十一>图片控件、动画控件
图片控件  ->CStatic
动画控件  ->CAnimateCtrl




<十二>属性页控件
属性页->选项卡->对话框
CTabCtrl


<十三>窗口指针
通过HWND获得CWnd指针
获得应用程序主窗口的指针


<十四>窗口操作
最大化窗口
最小化窗口
关闭窗口
设置窗口大小和位置
居中显示窗口
顶层显示窗口
设置窗口图标
获取和设置窗口标题


<十五>发送消息
向本窗体或外部窗体发送消息
SendMessage()   //同步,需要等待消息相应才返回
PostMessage()   //异步,发送完消息就返回




<十六>消息映射
MFC中的消息映射宏
DECLARE_MESSAGE_MAP
BEGIN_MESSAGE_MAP
END_MESSAGE_MAP
向导自动消息映射
手动消息映射


<17>自定义消息
大于WM_USER的消息ID用于自定义消息
使用RegisterWindowMessage() 注册一个消息ID
发送消息
映射消息
处理消息


<18>拦截消息
修改现有控件的功能 -> “子类化”技术
两个函数
SetWindowLong()
CallWindowProc()


<19>定时器
SetTimer()
KillTimer()
两种使用方法
消息通知方法的定时器使用方法
回调函数方式的定时器使用方法


<20>注册表
注册表内部结构
key -> subkey -> value -> 名称、类型、数据
注册表编程函数
RegCreateKey() RegCreateKeyEx()
RegOpenKey() RegOpenKeyEx()            //打开注册表
RegQueryVaule() RegQueryValueEx() //读取注册表
RegDeleteKey() RegDeleteKeyEx()
RegCloseKey() 


先打开KeyRegQueryValueEx(HKEY_LOCAL_MACHINE, 
_T("Hardware\\Description\\System\\CentralProcessor\\0"),
0,
KEY_QUERY_VALUE,
&hKey);


<20>系统度量
GetSystemMetrics(int nIndex);
nIndex
SM_CXSCREEN SM_CYSCREEN             //屏幕大小
SM_CXFULLSCREEN SM_CYFULLSCREEN         //全屏屏幕大小
SM_CXMAXINMIZED SM_CYMAXIMIZED //最大化窗口
SM_CXMINIMIZED SM_CYMINIMIZED //最小化窗口大小
SM_CXBORDER SM_CYBORDER //窗口边框大小
SM_CXSIZEFRAME SM_CYSIZEFRAME //可变边框厚度
SM_CXFIXEDFRAME SM_CYFIXEDFRAME //固定边框厚度
SM_CXHSCROLL SM_CYHSCROLL //水平滚动条大小
SM_CXVSCROLL SM_CYVSCROLL            //垂直滚动条大小
SM_CYCAPTION //标题栏高度
SM_CXSIZE SM_CYSIZE //标题栏按钮大小
SM_CYMENU //菜单栏高度
SM_CXCURSOR SM_CYCURSOR //光标大小(鼠标指针)
SM_CXICON SM_CYICON //默认图标大小


<21>注销、关机、重启
函数
ExitWindowEx(EWX_LOGOFF)
ExitWindowEx(EWX_SHUTDOWN)
ExitWindowEx(EWX_REBOOT)
进程提权
OpenProcessToken()
LookupPrivilegeValue()
AdjustTokenPrivileges()


<22>拖动无边框窗体
编程处理鼠标消息来移动窗体
MoveWindow()
处理两个细节
快速移动鼠标,鼠标移动到窗口外面,防止收不到鼠标消息
窗口失去焦点时结束移动
SetCapture() //捕获鼠标
ReleaseCapture() //释放捕获


<23>模拟消息
模拟键盘消息 - keybd_event()
模拟鼠标消息 - mouse_event()


<24>创建进程
WinExec
ShellExecute   ShellExecuteEx

CreateProcess




<25>多线程
创建线程 CreateThread()
关闭线程 CloseThread()
互斥对象 CreateMutex()
等待     WaitForSingleObject()
释放 ReleaseMutex();


<26套接字>
加载套接字   AfxSocketInit()  头文件Afxsock.h

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值