MFC
zyddst1314
奔跑的脚步不要停
展开
-
155 线程的相关操作
1.线程的挂起与恢复SuspendThread、ResumeThread线程的挂起和恢复是有次数的,挂起和恢复的次数是一一对应的2.线程的优先级①AfxBeginThread创建线程的时候直接指定②CreateThread需要创建之后指定。获取:GetThreadPriority 设置:SetThreadPriorityUINT _cdecl ThreadProc1(LPVOID lpParameter){ CStdioFile mFile; mFile.Open(_T("F:\\456.原创 2020-12-17 21:51:59 · 125 阅读 · 0 评论 -
154 、MFC中用户界面线程
界面线程的创建①从CWinThread类派生自己的子类:CUIThread②重载InitInstance(必须重载)与ExitInstance(可选重载)函数③在InitInstance函数界面中进行界面的创建④调用AfxBeginThread函数开启界面线程原创 2020-12-17 20:42:55 · 179 阅读 · 0 评论 -
27.实现一个简单的任务管理器
①、设计界面、以及列表控件变量的绑定;控件:List Controlsingleselection:Trueview:report绑定控件变量:m_TaskList②、列表控件样式的指定:m_TaskList.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);//设置列表视图控件的当前扩展样式 m_TaskList.InsertColumn(0, _T("进程名称"),2,100); m_TaskList.InsertColumn原创 2020-12-14 22:03:45 · 510 阅读 · 0 评论 -
26.进程的相关操作
打开某一进程1.ShellExecute方法可以直接使用路径打开//int IRet = (int)ShellExecute(m_hWnd, _T("open"), _T("C:\\WINDOWS\\NOTEPAD.EXE"), _T("F:\\123.txt"), NULL, SW_SHOW);//打开记事本 //int IRet = (int)ShellExecute(m_hWnd, _T("open"), _T("C:\\Program Files\\Internet Explorer\\ie原创 2020-12-12 20:45:44 · 82 阅读 · 0 评论 -
25.系统信息的获取
1.获取当前用户名称GetUserNameDWORD dwLen = UNLEN + 1; TCHAR szUserName[UNLEN + 1] = { 0 }; GetUserName(szUserName, &dwLen); MessageBox(szUserName);2.获取计算机的名称GetComputerNameDWORD dwLen = MAX_COMPUTERNAME_LENGTH + 1; TCHAR szComputerName[MAX_COMPUTERNA原创 2020-12-10 22:28:03 · 151 阅读 · 0 评论 -
24 系统各种路径信息的获取
1.Windows、System32、temp等目录的获取TCHAR szBuffer[MAX_PATH] = { 0 }; GetSystemWindowsDirectory(szBuffer, MAX_PATH); GetSystemDirectory(szBuffer, MAX_PATH); GetTempPath(MAX_PATH, szBuffer);2.桌面目录、我的文档等目录TCHAR szPath[MAX_PATH] = { 0 };SHGetSpecialFolderPat原创 2020-12-10 20:17:53 · 154 阅读 · 0 评论 -
23文件夹的基本操作
1.创建一个文件夹CreateDirectory(只能创建一层目录)2.文件夹的删除RemoveDirectory(此函数只能删除一个空的目录,如果目录中有子目录或子文件的话会删除失败的)3.文件夹属性的获取GetFileAttributes4.文件和文件夹的遍历操作CFileFind实现删除非空目录bool deleteTargetFolder(LPCTSTR lpstrPath){ CString strRootPath(lpstrPath); if (strRootPath[s原创 2020-12-09 21:36:16 · 259 阅读 · 0 评论 -
21、22)文件的基本操作
1.文件的创建、关闭创建:CFile::Open(一般用两个参数)关闭:CFile::Close2.文件的读写读:CFile::Read写:CFile::Write3.读取或写入一行数据读取一行:CStdioFile::ReadString;写入一行:CStdioFile::WriteString;4.文件指针将文件的指针移动到文件的任意位置:CFile::Seek//如果第二个参数指定为CFile::end的时候,偏移量为负数;将文件指针移动到文件的头部:CFile::SeekToB原创 2020-12-09 19:54:19 · 122 阅读 · 0 评论 -
20(补充).实现简单的计算器
1.将计算结果保存到剪切板在按钮函数里添加如下函数if (!OpenClipboard())//打开剪切板 { return; } if (!EmptyClipboard())//清空剪切板的数据 { CloseClipboard(); return; } CString str; GetDlgItemText(IDC_STATIC_RESULT, str); size_t cbStr = (str.GetLength() + 1) * sizeof(TCHAR);//申请的原创 2020-12-03 22:23:09 · 97 阅读 · 0 评论 -
20.实现简单的计算器
1.添加两个Edit Control、两个Static Text和一个ComBo Box;如下图所示:2.为ComBo Box添加变量,命名为mComBoCal;3.在对话框的源文件的初始化函数中添加如下代码,在ComBo Box中添加内容;mComBoCal.InsertString(0, _T("+"));//在ComBo中添加"+"运算 mComBoCal.InsertString(1, _T("-"));//在ComBo中添加"-"运算 mComBoCal.InsertString(2原创 2020-12-03 21:25:56 · 174 阅读 · 0 评论 -
19.对话框的状态栏操作
让对话框的状态栏显示时钟、鼠标位置、鼠标点的颜色信息1 添加字符串资源ID_INDICATION_POS = 鼠标所在位置ID_INDICATION_COLOR = 鼠标位置颜色ID_INDICATION_TIME = 当前系统事件2.在对话框类的头文件中进行状态栏对象的定义CStatusBar mWndStatusBar;3.定义窗格数组static UINT indicators[] ={ID_INDICATION_POS,//鼠标所在位置ID_INDICATION_COLOR,/原创 2020-12-02 21:59:21 · 306 阅读 · 0 评论 -
18.对话框的工具栏操作
1.工具栏在对话框中显示1.1主对话框的头文件中添加声明CToolBar mWndToolBar;主对话框的源文件中添加如下代码 if (!mWndToolBar.CreateEx(this, TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE | CBRS_ALIGN_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS,CRect(4, 4, 0, 0)) || !mWndToolBar.LoadToolBar(IDR_TOOLBAR1)) { return原创 2020-12-01 22:08:03 · 200 阅读 · 0 评论 -
17.对话框的菜单操作
1.MFC中菜单的关联类CMenu2.下拉对话框在对应选项处右击添加事件处理程序,3.弹出对话框在主函数中响应WM_OnContextMenu消息,在其中添加如下代码CMenu mMenu, *pMenu=NULL; mMenu.LoadMenuW(IDR_MENU1); pMenu = mMenu.GetSubMenu(0); pMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x,point.y,this); ```原创 2020-12-01 20:24:00 · 218 阅读 · 0 评论 -
16.让对话框支持拖拽操作/目录框打开操作
1.打开目录对话框void CMFCApplication7Dlg::OnBnClickedButton1(){ TCHAR szPath[MAX_PATH] = { 0 }; BROWSEINFO mBroInfo = { 0 }; mBroInfo.hwndOwner = m_hWnd; ITEMIDLIST *pidl = SHBrowseForFolder(&mBroInfo);//打开文件目录对话框 if (SHGetPathFromIDList(pidl, szPath原创 2020-11-30 21:37:29 · 170 阅读 · 0 评论