
mfc
Ambition_ZB
c++编程,windows编程
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mfc选择文件夹,指定根目录
CString CTestWnd::SelectFolderPath(){ TCHAR szFolderPath[MAX_PATH] = { 0 }; CString strFolderPath = TEXT(""); BROWSEINFO sInfo; ::ZeroMemory(&sInfo, sizeof(BROWSEINF...原创 2019-08-15 10:07:45 · 1948 阅读 · 0 评论 -
CTime和CString相互转化
CTime转CString:CTime cTime = GetCurrentTime();CString strTemp = _T("");strTemp = tCreate.Format(_T("%Y-%m-%d %H:%M:%S"));CString转CTime:CTime SFileInfo::StringToTime(CString strTime){ COleVarian...原创 2019-03-11 19:21:03 · 846 阅读 · 0 评论 -
文件夹遍历
void ReadFolder(const CString strFolderPath){ CString strPath = strFolderPath + _T("\\*.*"); CString strFullName; CFileFind finder; BOOL bWorking = finder.FindFile(strPath ); while (bWorking)...原创 2019-03-19 17:38:08 · 174 阅读 · 0 评论 -
MFC 设置所有控件的字体
void SetChildWndFont(HWND hWndParent, CFont *pFont){ if (!pFont) return; CWnd * pWnd = NULL; pWnd = CWnd::FromHandle(::GetWindow(hWndParent, GW_CHILD)); while(pWnd) { pWnd->SetFont(pFon...原创 2019-02-28 09:19:22 · 1167 阅读 · 0 评论 -
UDP发送与接收
UDP发送://成员变量定义int m_nUdpPort; //自定义SOCKET m_udpSocket;sockaddr_in m_addrto;//初始化广播Socketm_udpSocket = socket(AF_INET, SOCK_DGRAM, 0);if (m_udpSocket != INVALID_SOCKET){ //启动SOCKET库,版本为...原创 2019-01-02 09:23:02 · 6121 阅读 · 0 评论 -
选择文件夹
函数:BOOL G_SelectFolderPath(CString & strFolderPath, HWND hWnd){ TCHAR szDir[MAX_PATH]; BROWSEINFO bi; ITEMIDLIST *pidl; bi.hwndOwner = hWnd; bi.pidlRoot = NULL; bi.pszDisplayName = ...原创 2018-12-21 09:28:34 · 173 阅读 · 0 评论 -
CString转char*
函数:BOOL G_StringToASII(CString const &strSrc, BYTE * &pRefStoreBuff, int &nBuffLen, int &nLenResult){ nLenResult = WideCharToMultiByte(CP_ACP, WC_COMPOSITECHECK, strSrc, -1, NULL, 0...原创 2018-12-21 09:22:37 · 5888 阅读 · 0 评论 -
隐藏窗口任务栏图标的三种方法
本文介绍三种方法,可以实现隐藏窗口在任务栏中的图标。其中前两种比较坑爹,不建议使用。转载:原文:https://www.xuebuyuan.com/1338887.html方法1:ModifyStyleEx(WS_EX_APPWINDOW,WS_EX_TOOLWINDOW);为窗口设置WS_EX_TOOLWINDOW属性。会有以下效果:1. 窗口图标不在任务栏显...原创 2018-09-20 14:34:39 · 19832 阅读 · 0 评论 -
GDI+ Bitmap保存到本地图片
Bitmap bmp;//bmp构建方法,根据具体情况构建Bitmap ......CLSID pngClsid;GetEncoderClsid(_T("image/bmp"), &pngClsid);bmp.Save(strPic, &pngClsid, NULL);//GetEncoderClsid函数的第一个参数是图片格式,"/"后面的为图片的后缀这...原创 2018-08-02 10:25:41 · 2684 阅读 · 0 评论 -
mfc加载PNG图片
方法一(GDI+)://本地加载Image image(_T("1.png")); //资源加载BOOL ImageFromIDResource(UINT nID, LPCTSTR sTR,Image *&pImg){ HINSTANCE hInst = AfxGetResourceHandle(); HRSRC hRsrc = ::FindResource (hIn...原创 2018-07-27 15:10:32 · 7638 阅读 · 0 评论 -
将文件大小转换成合适的KB/MB/GB
CString GetFileSizeString(__int64 nFileSize){ CString strFileSize = _T(""); TCHAR szFileSize[MAX_PATH]; StrFormatByteSize(nFileSize, szFileSize, MAX_PATH); strFileSize.Format(_T("%s"), szFileSi...原创 2019-03-13 14:27:30 · 1954 阅读 · 0 评论 -
mfc绘制框选边框
CPen penBlack(PS_SOLID, 1, CLR_BK), penWhite(PS_DOT, 1, RGB(255, 255, 255)), *pOldPen;CBrush brush, *pOldBrh;brush.CreateStockObject(NULL_BRUSH);pOldBrh = (CBrush*)pDC->SelectObject(&brush...原创 2019-03-22 16:22:42 · 2241 阅读 · 0 评论 -
CBitmap输出图片到本地
CImage img;img.Attach(m_Bitmap.operator HBITMAP());img.Save(_T("E:\\1.jpg"));原创 2019-08-05 10:42:31 · 818 阅读 · 0 评论 -
mfc获取当前工作路径
TCHAR szFilePath[MAX_PATH];::GetModuleFileName(NULL, szFilePath, MAX_PATH);(_tcsrchr(szFilePath, _T('\\')))[1] = 0;//删除文件名,只获得路径 字串CString str_url = szFilePath; //str_url 中保存的是当前目录...原创 2019-06-10 17:31:04 · 1230 阅读 · 0 评论 -
Windows 下使用PDH 获取CPU 使用率
windows下获取cpu 使用率的方法大概有以下这三种:windows 自带的API ,一般包含在头文件windows.h中Performance Data Helper...转载 2019-06-10 09:19:48 · 1123 阅读 · 0 评论 -
mfc从资源加载图片
BOOL ImageFromIDResource(UINT nID, LPCTSTR sTR, Image *&pImg){ HINSTANCE hInst = AfxGetResourceHandle(); HRSRC hRsrc = ::FindResource(hInst, MAKEINTRESOURCE(nID), sTR); // type if (!hRsrc) r...原创 2019-04-17 10:07:57 · 1609 阅读 · 0 评论 -
获取文件信息的两种方式
第一种:利用CFile与CFileStatus类CFileStatus status;CFile::GetStatus(strFilePath, status);CFileStatus 就是得到的数据结构,数据结构如下:struct CFileStatus{ CTime m_ctime; // creation date/time of file CTime m_...原创 2019-04-16 10:35:57 · 534 阅读 · 0 评论 -
MFC修改CFileDialog的最大文件选择数量
DWORD nFileNumbers = 500; //CFileDialog最大选择文件数量CString strPath = _T("F:\\迅雷下载\\将夜");CFileDialog dlg(TRUE, _T("*.*"), strPath, OFN_ALLOWMULTISELECT | OFN_HIDEREADONLY | OFN_FILEMUSTEXIST, g_strFil...原创 2019-04-16 09:02:32 · 694 阅读 · 0 评论 -
MFC访问共享文件夹
#include "WinNetWK.h"#pragma comment(lib, "Mpr.lib")#pragma comment(lib, "shlwapi.lib")void CPlayerResourceCtnWnd::OnBnClickedBtnUploadFile(){ ////////////////////////////////////////////////////...原创 2019-04-16 08:59:45 · 2701 阅读 · 2 评论 -
mfc采用内存映射复制文件
基本数据类:(复制文件过程中用到的基本数据类).h文件:#pragma once//上传/下载信息struct SUpload_DownloadInfo{ SUpload_DownloadInfo(CString strFilePath = _T(""), CString strCenterPath = _T(""), GUID guidDev = GUID_NULL); CStr...原创 2019-03-28 16:39:40 · 1313 阅读 · 1 评论 -
VC下加载JPG/GIF/PNG图片的两种方法
转载自:http://blog.sina.com.cn/s/blog_6582aa410100huil.html仅管VC有提供相应的API和类来操作bmp位图、图标和(增强)元文件,但却不支持jpg、gif和png等格式的图片,而这几种格式却是常常要用到的。这里我给大家介绍两种办法来操作这些格式的图片。1.用API OleLoadPicture来加载JPG、GIF格式的图片(注:不支持PN...转载 2019-03-22 18:01:50 · 518 阅读 · 0 评论 -
线程的使用
.h文件中声明://线程函数要是友元函数friend UINT threadPictureVideoFrame(LPVOID pParam);//线程CWinThread* m_pThreadTime;HANDLE m_hStopThread;HANDLE m_hExitThread;CCriticalSection m_lockMotion...原创 2018-07-23 16:55:50 · 159 阅读 · 0 评论 -
MFC 对话框启用触控
首先在OnInitDialog()中添加:RegisterTouchWindow(TRUE, TWF_WANTPALM);这个函数主要看第二个参数,及触控的类型的标志位,有两种:TWF_FINETOUCH 设置 hWnd 为非合并触摸输入方式. 设置此标志将禁用防止手掌误触功能,从而减少获取WM_TOUCH 消息的延迟。如果您希望在用户触摸应用程序时尽可能快地做出响应,这样做非常有用。TWF_WA...原创 2018-05-23 11:17:24 · 2109 阅读 · 0 评论 -
mfc文件重命名
BOOL CDlg::RenameFile(CString strSrc, CString strNew){if (strSrc.IsEmpty() || strNew.IsEmpty())return FALSE;if (!PathFileExists(strSrc)){AfxMessageBox(NCLoadString(_T("文件或目录不存在.")));return FALS...原创 2018-03-07 17:00:18 · 5542 阅读 · 0 评论 -
MFC删除文件夹与文件
mfc删除文件夹分为删除空文件夹和非空文件夹删除空文件夹直接使用RemoveDirectory()函数即可,删除非空文件夹时,mfc没有直接的函数,需要自己去删除该文件夹下的所有文件,再删除该文件夹VOID CDlg::DeleteDirectory(CString strPath){ if (strPath.IsEmpty()) return; CFileFind fileFinde...原创 2018-03-07 16:37:24 · 6020 阅读 · 0 评论 -
mfc钩子
static HHOOK m_hookKey;m_hookKey = ::SetWindowsHookEx(WH_MOUSE, MouseProc, NULL, GetCurrentThreadId());WH_MOUSE:是鼠标消息,具体是什么,根据自己的需求。MouseProc:接收函数GetCurrentThreadId():当前线程LRESULT CALLBACK CDlg::MouseP...原创 2018-02-26 11:44:47 · 387 阅读 · 0 评论 -
mfc读取ini文件
m_strSystemPath为文件路径TCHAR szValue[MAX_PATH] = {0};//写文件WritePrivateProfileString(_T("Setup"), _T("Path"), GetRoot(), m_strSystemPath);//读字符串GetPrivateProfileString(_T("Setup"), _T("IP"), _T("127.0.0.1...原创 2018-02-26 11:35:52 · 338 阅读 · 0 评论 -
mfc窗口最大化显示
//最大化显示 int cxScreen = ::GetSystemMetrics(SM_CXSCREEN); CRect rt; SystemParametersInfo(SPI_GETWORKAREA, 0, &rt, 0); MoveWindow(0, 0, cxScreen, rt.Height());原创 2018-02-26 11:13:12 · 1299 阅读 · 0 评论 -
正则表达式大全
一、校验数字的js正则表达式 1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?...原创 2018-02-26 10:59:45 · 170 阅读 · 0 评论 -
mfc多屏检测及双击窗口最大化
在OnInitDialog函数中添加:EnumDisplayMonitors(NULL, NULL, MonitorEnumProc, NULL);MonitorEnumProc函数:CArray <MONITORINFO, MONITORINFO&>g_arMonitorInfo;BOOL CALLBACK MonitorEnumProc(HMONITOR hMonitor...原创 2018-02-26 10:40:43 · 754 阅读 · 0 评论 -
mfc应用程序单例
在App的InitInstance()中添加:HANDLE hMutex = CreateMutex(NULL, FALSE, _T("exe"));if (GetLastError() == ERROR_ALREADY_EXISTS){ AfxMessageBox(_T("exe已经启动")); return FALSE;}原创 2018-02-26 10:55:01 · 172 阅读 · 0 评论 -
mfc从本地加载bmp图片
HBITMAP hHitmap;hHitmap = (HBITMAP)LoadImage(AfxGetInstanceHandle(), 图片路径(CString), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);CBitmap mapPreview;mapPreview.Attach(hHitmap);BITMAP bitmap;int n = mapPreview....原创 2018-02-26 10:53:18 · 2566 阅读 · 0 评论 -
SHFileOperation的用法
//删除文件或者文件夹bool DeleteFile(char * lpszPath){SHFILEOPSTRUCT FileOp={0};FileOp.fFlags = FOF_ALLOWUNDO | //允许放回回收站 FOF_NOCONFIRMATION; //不出现确认对话框FileOp.pFrom = lpszPath;FileOp.pTo = NULL; //一...转载 2018-03-07 17:03:49 · 665 阅读 · 0 评论 -
mfc按钮响应回车键
在按钮属性中,将Default Button属性设置为True即可对应代码中的BS_DEFPUSHBUTTON属性用代码添加该属性时可以使用ModifyStyle()函数原创 2018-03-07 17:17:08 · 3290 阅读 · 0 评论 -
MFC获取错误代码
使用下面的函数获取错误代码:GetLastError()但是这个函数只能得到错误代码,并不能得到具体的错误信息,想要得到具体的错误信息,需要这个函数:FormatMessge(),具体这个函数怎么使用,可以去查函数定义或者百度;在Microsoft Visual Studio中,可以使用Watch(监视)窗口查看错误代码和错误的文本描述;具体的做法如下:在Watch(监视)窗口中选择一行,并且输入...原创 2018-02-25 20:03:45 · 1448 阅读 · 0 评论 -
MFC选择文件对话框和选择文件夹对话框
选择单个文件对话框CString strFile = _T("");CFileDialog dlgFile(TRUE, NULL, NULL, OFN_HIDEREADONLY, _T("Describe Files (*.jpg)|*.jpg|All Files (*.*)|*.*||"), NULL);if (dlgFile.DoModal()){ strFile =...原创 2018-02-24 17:52:19 · 379 阅读 · 0 评论 -
mfc获取系统特殊文件夹的路径如:系统目录
如果需要,请在StdAfx.h中添加 #include <shlobj.h> TCHAR MyDir[_MAX_PATH]; SHGetSpecialFolderPath(this->GetSafeHwnd(),MyDir,CSIDL_APPDATA,0);AfxMessageBox(MyDir);其中第三个参数CSIDL_APPDATA可以为以下的值: CSIDL_BI...原创 2018-02-24 17:49:03 · 1142 阅读 · 0 评论 -
mfc使用GDI+
初始化://////////////////////////////////////////////////////////////////stdafx.h#include <GdiPlus.h>//////////////////////////////////////////////////////////////////APP.hULONG_PTR m_gdiplu...原创 2018-02-24 17:42:34 · 977 阅读 · 0 评论 -
mfc注册快捷键
注册:RegisterHotKey(m_hWnd,ID_EDIT_COPY,HOTKEYF_CONTROL,'C');//复制RegisterHotKey(m_hWnd,ID_EDIT_CUT,HOTKEYF_CONTROL,'X');//剪切RegisterHotKey(m_hWnd,ID_EDIT_PASTE,HOTKEYF_CONTROL,'V');//粘贴'C');//复制R...原创 2018-02-24 17:28:33 · 430 阅读 · 0 评论 -
mfc双缓冲绘图
创建从CWnd派生的类CMyWnd;在MyWnd.h中定义:CDC m_MemDC;CBitmap m_Bitmap;CRect m_rtClient;之后用类向导添加或者手动添加下面的消息响应函数:afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);afx_msg void OnSize(UINT nType,...原创 2018-02-24 17:22:04 · 727 阅读 · 0 评论