
MFC
陈旧但却不简单的一门语言
直方大
君子慎独,此谓诚于中,形于外,故君子必慎其独也
展开
-
MFC处理文件常用操作
MFC判断文件或文件夹是否存在函数CString Path;BOOL rec = PathFileExists(Path);if(rec){ //存在}else{ // 不存在}创建文件CString filename=_T("D:/test.txt");CFile file(filename,CFile::modeCreate);file.Close();写文件 CString filename =_T("D:/test.txt"); CFile原创 2022-05-04 22:57:03 · 940 阅读 · 0 评论 -
MFC获取某控件的宽高
获取控件宽高 CRect rc; CWnd *pWnd = GetDlgItem(IDC_STATIC_WARN);//IDC_picture为picture控件ID pWnd->GetClientRect(&rc);//rc为控件的大小。 int tmpx = rc.Height();//控件高 int tmpy = rc.Width();//控件宽在某控件上画图GetDlgItem(IDC_STATIC_WARN)->GetDC()->El原创 2021-06-25 10:57:14 · 2452 阅读 · 0 评论 -
c语言创建文件夹与删除文件夹
今天在写代码时遇到对文件夹的创建删除操作,经过一番查找试验,筛选出两种方法,mark一下方法一#include <io.h>//_access的头文件void fun(char*path){ // path为绝对路径 eg: "d:\\log" //如果文件夹不存在 if(_access(path,0)!=0) //创建文件夹 CreateDirectory(path,0); //删除文件 //DeleteFi原创 2021-05-21 09:04:47 · 9766 阅读 · 2 评论 -
MFC对话框模式下保存Picture控件中的内容为jpg,bmp图片
建对话框后会生成CDlg.h和CDlg.cpp;1-在CCropDlg.h中添加:#include <atlimage.h>2-在CCropDlg.cpp中添加://双击保存按钮,跳出响应函数,在函数中加入如下内容void CCropDlg::Onsave(){// TODO: 在此添加命令处理程序代码CWnd* bmpShow = GetDlgItem(IDC_ShowEdge);CDC *pdc = bmpShow->GetDC();//CImage imag原创 2021-04-03 15:50:15 · 603 阅读 · 1 评论 -
如何将非模态的对话框放到单文档的主框架中显示
CMyDlg *pDlg = new CMyDlg;pDlg->Create(CMyDlg::IDD, this);// IDD对应 对话框的IDDpDlg->ShowWindow(SW_SHOW);//pDlg->SetWindwosPos(&wndTop, 0, 0, 100, 100, SW_SHOW);pDlg->CenterWindow(); // 居中原创 2021-01-18 13:05:55 · 277 阅读 · 0 评论 -
文件管理右键重命名
CTreeCtrl树控件在很多时候都可以用得到,首先加上树形控件的两个通知消息:TVN_BEGINLABELEDIT,TVN_ENDLABELEDIT,在响应函数中添加这两个消息的响应函数void CFileView::OnTvnBeginLabelEditTree(NMHDR* pNMHDR, LRESULT* pResult){ LPNMTVDISPINFO pTVDispInfo = reinterpret_cast<LPNMTVDISPINFO>(pNMHDR); T原创 2020-12-18 15:40:22 · 449 阅读 · 0 评论 -
单文档或者多文档控制自带属性窗口的显示
创建一个单文档或者多文档工程之后,会自带CPropertiesWnd属性窗口,使用过程中点了关闭,发现不能在显示了,关闭工程重新打开也不行。必须把相关代码注释掉才可以。后来问百度,可以用ShowPane解决,以下是我的处理过程:1.View部分,点击之后消息函数里写CMainFrame* pMainFrame = (CMainFrame*)AfxGetMainWnd();CPropertiesWnd* myWndProperties = pMainFrame->GetPropertiesWnd原创 2020-12-16 13:49:01 · 302 阅读 · 0 评论 -
MFC实现对话框打印
void CPrintDlg::OnBnClickedButton1() // 打印{ // 获取与打印有关的设备描述符 CDC dc; CPrintDialog dlg(FALSE); dlg.GetDefaults(); // 应用程序输出到默认的打印机上 dc.Attach( dlg.GetPrinterDC() ); //if(dlg.DoModal() == IDOK) // dc.Attach(dlg.GetPrinterDC());// 可以用户选原创 2020-10-28 14:10:27 · 954 阅读 · 0 评论 -
MFC控件之按钮BUTTON的使用
1.将新建的对话框上的一开始就存在的控件删除(点击控件,delete)2.左键 点击按钮工具(按住不放),然后拖至对话框中需要的位置3.选中拖放的按钮,右键点击,选择属性,可以在这样看到按钮的各种属性,同样,我们也可以通过改变按钮的属性来改变按钮的样式,这里采用默认配置4.这里我们需要改变按钮的Id和标题,标题是按钮显示的内容,ID是按钮的唯一标识,同一个对话框的不同控件的ID不能相同,但是标识可以相同,修改完后,回车5.双击按钮(只适合按钮,具体请看注意事项),会弹出一个创建函数的按钮,函数的名称原创 2020-10-22 16:56:43 · 1132 阅读 · 0 评论 -
MFC控件之滑动条 slider的简单使用
1,将控件slider control拖放到对话框中;2为slider control添加control型变量m_slider;3,使用类向导,给对话框类添加“虚函数”,OnInitDialog();4,在CMyImagge.cpp中,对OnInitDialog()函数进行编写:// CMyImage 消息处理程序BOOL CMyImage::OnInitDialog(){ CDialogEx::OnInitDialog(); CDialogEx::OnInitDialog.原创 2020-10-21 14:00:55 · 4847 阅读 · 0 评论 -
MFC对 ini文件进行读写
1-文件名及文件内容2-界面设计3-附源代码// my fun 2020-10-10// 获取exe文件的路径TCHAR* GetAppPath(TCHAR* PathBuf, int BufSize){ ZeroMemory(PathBuf, BufSize); GetModuleFileName(AfxGetApp()->m_hInstance, PathBuf, BufSize-1); PathRemoveFileSpec(PathBuf); _tcscat(原创 2020-10-10 16:57:26 · 607 阅读 · 0 评论