您的位置:首页 > 其它

MFC常用函数介绍

2006-10-27 21:20 567 查看
MFC常用函数介绍
转贴
stoff666
2005-11-10 18:16:00
查看评论



  

9月7号
动态改变控件内容
GetDlgItem()->SetWindowText()

获取IDC_TEXT内的字符串的长度
GetWindowTextLength(GetDlgItem(hwnd, IDC_TEXT))

按钮的使能与禁止
EnableWindow(TRUE) or EnableWindow(FALSE)

控件的隐藏与显示
ShowWindow( SW_HIDE ) or ShowWindow( SW_SHOW )

MoveWindow()和SetWindowPos()

VIEW类的CalcWindowRect函数设定视中控件的初始尺寸

CFrameWnd *pFrameWnd=GetParentFrame(); //获取框架窗口指针

pFrameWnd->GetClientRect(&rect); //获取客户区尺寸

GetMainWnd()

AfxGetMainWnd()//这个函数是用来获得主窗口的。在MFC中经常要修改主窗口的属性,所以特别提供了这个函数。

AfxGetApp()

InvalidateRect()

UpdateData()

GetPathName()

SetModifiedFlag()

GetDocument()

SetDlgItemText(IDC_TEXT, "This is a string");

SetDialogBKColor()

SetBkColor()

SetTextColor()

GetModuleHandle()

PostMessage()和SendMessage()

GetOpenFileName() and GetSaveFileName()

GetDesktopWindow()//获得桌面窗口句柄(见工程中的实现窗口的渐隐)

CRect rect;
GetWindowRect(rect)//获得窗口中所有控件的位置,这样我们就可以在窗口的消息中利用位置判断来实现 //事件控制。

GetDlgItem(IDC_LINK)->GetWindowRect(&m_pRectLink);//获得控件IDC_LINK的位置,将静态文本的屏 //幕坐标存放在m_pRectLink中
ScreenToClient(&m_pRectLink);//将屏幕坐标转换为客户坐标

OnMouseMove()//可以用来实现改变"某块区域"的鼠标的"形状"

AfxGetMainWnd()->PostMessage(WM_SYSCOMMAND,SC_CLOSE,(LPARAM)NULL);//发送消息关闭SDI应用程序
AfxGetMainWnd()->PostMessage(WM_COMMAND,WM_CLOSE,(LPARAM)NULL);//发送消息关闭SDI应用程序
PostQuitMessage(0);//发送消息关闭SDI应用程序

GetStockObject(); //GetStockObject的返回的对象完全不需要删除,因为GetStockObject返回的根本不是句柄,也就是说根本不是一个对象,甚至GetStockObject本身都不需要,因为它的返回值只是一个标识系统对象的ID值,只不过是为了让SelectObject方便选择系统对象,那么,你在使用SelectObject时直接提供ID值就OK,如SYSTEM_FONT的ID值是148,那么就可直接使用Invoke SelectObject,hdc,148就行,只要你记住了常用Stock对象的ID或把它定义成常数,GetStockObject完全可以丢掉!

SelectObject(); //SelectObject,它返回的才是一个对象,不过是前一对象的句柄,所以,如果要删除对象,只有选择新的同类型的对象到hdc中,前一对象才返回,就可以删除了,如果中间有交错,记住SelectObject返回的总是前一次选择的同一类型(是同一类型)的对象,如果一个过程很复杂,可以把经常使用的对象在程序启动时创建好,然后把句柄保存起来,使用起来就方便多了,甚至不需要删除,因为程序在退出时所占用的对象Windows会自动清除。)

WIN32文件:GetFileAttributes和PathIsDirectory可以用于判断文件是否是目录,创建文件可以用CreateDirectory或者MakeSureDirectoryPathExists

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: