自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 MFC控件的公共属性:

ID:控件的资源标识。Visiable:控件是否可见。Disabled:控件是否被禁止、被禁止的控件无法接受键盘和鼠标输入。Group:是否从这个空间开始一个新组。Tab stop:在程序中是否可以用【Tab】键切换到这个控件。Help ID:是否给控件分配一个帮助标识,帮助标识基于控件本身的资源标识。Client edge:给控件增加一个凹陷的边界,使整个控件看起来像是凹下去的一样。Static edge:给控件增加一个边界。Modal frame:给控件增加一个3维的框.

2022-05-16 10:05:32 578

原创 stdafx.h的作用以及原理

stdafx.hVC工程里面经常见到stdafx.h这个头文件,以前也没有特别注意,但是这个文件用不好经常会出错,所以就GOOGLE了一下,总算是弄清楚了。。。stdafx的英文全称为:Standard Application Framework Extensions(标准应用程序框架的扩展)。所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快

2022-04-24 14:57:11 244

原创 CSV文件操作

1.CSV文件是一行一行存储的,每个数据之间用“,”隔开2.定义一个数组:CStringArray csvTitle3.添加一行数据:csvTitle.RemoveAll(); csvTitle.Add(_T("a"));csvTitle.Add(_T("b"));m_pCsv->WriteDataToFile(&csvTitle);4.将a,b写入.csv文件需要用到WriteString函数:void CSVWrite::WriteDataToFile

2022-03-14 18:40:33 1001

原创 字符串之间的互相转换

Cstring转String:GetBuffer()别的转Cstring:Format()Cstring转int:_ttoi()Cstring转double:_tcstod(a,NULL)Cstring a;String b;int c;double d;b= a.GetBuffer();a.Format(“%d”,c);c=_ttoi(a);d=_tcstod(a,NULL);...

2022-03-14 11:27:03 266

原创 获取当前时间的方法

1.CTimeCTime currentTime = CTime::GetCurrentTime(); CString strYear, strMonth;strYear.Format("%04d", currentTime.GetYear());strMonth.Format("%04d-%02d", currentTime.GetYear(), currentTime.GetMonth());2.time_ttime_t currentTime = time(NULL);

2022-03-14 10:24:02 979

原创 分隔字符串

1.CString Left( int nCount ) const; //从左边1开始获取前 nCount 个字符CString Mid( int nFirst ) const; //从左边第 nCount+1 个字符开始,获取后面所有的字符CString Mid( int nFirst, int nCount ) const; //从左边第 nFirst+1 个字符开始,获取后面 nCount 个字符CString Right( int nCount ) const; //从右边1开始获

2022-03-01 15:56:28 142

原创 EXE所在的文件夹的绝对路径

CString strPath; GetModuleFileName(NULL,strPath.GetBufferSetLength (MAX_PATH+1),MAX_PATH); int pos = strPath.ReverseFind('\\');//查找倒数最后一个“\\”符号 strPath = strPath.Left(pos);//strPath只获取exe所在文件夹路径...

2022-03-01 15:52:35 217

原创 error C1083:无法打开包括文件:“corecrt.h”: Ho such file or directory

解决方法:选择最新的SDK版本:项目属性->常规->windows SDK版本

2021-09-10 16:15:38 756

原创 error C2110“+”:不能添加两个指针

改为:SysParapath.Format(_T("%s%d%s"),“C:\ProgramData\AI - Smart\Instance_0”,index_thread,"\Devices\PC_Local\Data\SYSPara\WorkPro.ini")进行格式化输出

2021-06-28 17:03:39 489

原创 MFC学习

1.宏#define定义一个预处理宏#undef取消宏的定义#ifdef判断某个宏是否被定义,若已定义,执...

2021-04-19 10:59:00 199

原创 DLL

一、静态库和动态库1、静态库(.lib)函数和数据被编译进一个二进制文件(通常扩展名为.LIB)。在使用静态库的情况下,在编译链接可执行文件时,链接器从库中复制这些函数和数据并把它们和应用程序的其他模块组合起来创建最终的可执行文件(.EXE文件)。当发布产品时,只需要发布这个可执行文件,并不需要发布被使用的静态库。2、动态库(.lib文件和.dll文件)在使用动态库的时候,往往提供两个文件:一个引入库(.lib)文件(也称“导入库文件”)和一个DLL(.dll)文件。虽然引入库的后缀名也是“lib

2021-04-16 13:46:04 222

原创 MFC 计时器

1.正计时:1.1头部:#define N_TIME_SEC 1000 //一秒时间间隔#define N_TIME_SHOW 200 //0.2s刷新显示#define N_TIMER_SEC 1#define N_TIMER_SHOW 21.2初始化函数:n_hour = 0;n_minute = 0;n_second = 0;s_hour = "00";s_minute = "00";s_second = "00";UpdateData(FALSE);1.3O

2021-04-12 16:16:47 1470

转载 MFC 菜单栏添加方法

一、在资源视图中将menu加入资源视图中1、在MFC中新建一个基于对话框的MFC界面工程,打开资源视图截图如下:里面是默认没有menu资源的。这时就需要我们手动添加menu资源了。2、在资源视图中添加menu资源还是在资源视图中,任选一个空白的地方“右击”,弹出如下界面,选择“添加资源(A)”功能之后在弹出的对话框中选择menu资源,再单击“新建”按钮,界面如下:注意:这个时候在工程的资源视图中已经有了menu资源。接下来就是新建menu资源了。二、在资源视图添加菜单栏1、

2021-04-12 14:50:15 4251

原创 MFC 模态对话框&非模态对话框

1.模态对话框:CDlgExec dlg;//定义一个对话框对象dlg.DoModal();//利用这个对象调用DoModal函数以产生一个模态对话框2.非模态对话框:CDlgShow dlg;//弹出非模态对话框dlg.Creat(IDC_SHOW);//创建dlg.ShowWindow(SW_SHOWNORMAL);//显示这样设计的非模态对话框只能弹出一次,多次就会崩掉,改进:2.1在CMy01CDialogDlg:private: CDlgShow dlg

2021-04-12 11:03:00 286

原创 MFC combo box控件

1.将属性改为droplist类型,增加qq,ww,ee,rr,tt五个可选项,在初始化函数中:combox.AddString(_T("qq"));combox.AddString(_T("ww"));combox.AddString(_T("ee"));combox.AddString(_T("rr"));combox.AddString(_T("tt"));2.选择ww,点击button将combo box中的内容传到edit控件:int nIndex=combox.GetCu

2021-04-12 10:49:44 428 2

原创 MFC list control控件

1.初始化代码:CRect rect; // 获取编程语言列表视图控件的位置和大小 m_List.GetClientRect(&rect); // 为列表视图控件添加全行选中和栅格风格 m_List.SetExtendedStyle(m_List.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES); // 为列表视图控件添加三列 m_List.InsertColumn(0, _T(

2021-04-12 10:37:07 760

原创 MFC edit control控件

同一对话框,将edit1中的内容转移到edit2中: CString str1,str2;GetDlgItem(IDC_EDIT1)->GetWindowText(str1);//获取一控件的内容字符串GetDlgItem(IDC_EDIT2)->GetWindowText(str2);//获取二控件的内容字符串GetDlgItem(IDC_EDIT2)->SetWindowText(str1);//将控件1的内容传到控件2内GetDlgItem(IDC_EDIT1)->

2021-04-12 10:11:58 444 2

原创 MFC check box控件

勾选上check1,check2如果是选中状态变为不选中,反之check2也可以控制check1: if(BST_CHECK==IsDlgButtonChecked(IDC_CHECK2)){ CButton*pBtn=(CButton*)GetDlgItem(IDC_CHECK2)); pBtn->SetCheck(0);}if(BST_CHECK==IsDlgButtonChecked(IDC_CHECK1)){ CButton*pBtn=(CButton*)G

2021-04-12 10:00:16 258

原创 MFC button控件

在界面可用&不可用: GetDlgItem(IDC_BUTTON1)->EnableWindow(true);GetDlgItem(IDC_BUTTON1)->EnableWindow(false); 在界面显示&不显示: GetDlgItem(IDC_BUTTON1)->ShowWindow(SW_SHOW);GetDlgItem(IDC_BUTTON1)->ShowWindow(SW_HIDE); ...

2021-04-12 09:50:11 149

原创 头文件(.h) 和实现文件(.cpp)区别

简单讲,一个Package就是由同名的.h和.cpp文件组成。当然可以少其中任意一个文件:只有.h文件的Package可以是接口或模板(template)的定义;只有.cpp文件的Package可以是一个程序的入口。.cpp是C++文件的扩展名,.h主要是进行函数定义的,类中函数的声明和调用是在.cpp中的,.h文件主要是把函数进行封装,在写很多代码的时候,用上.h有很好的作用,这时候我们只要给对方公司*.h文件就行了,这样既提供了必要的信息,又保护了我们的核心代码。在.cpp中对.h文件进行..

2021-04-09 16:35:36 5596 2

原创 新建List列表控件,格式设置为Report Button控件 Edit1控件 要求:为列表插上头 名字自己随便定义 每点击一次Button控件,向列表中插入一行数据

1.新建一个基于对话框的MFC应用程序:List的view设置为report,single selection设置为true2.右击list添加变量3.为list添加内容,在BOOL ClistDlg::OnInitDialog()中添加代码:// 设置此对话框的图标。 当应用程序主窗口不是对话框时,框架将自动 // 执行此操作 SetIcon(m_hIcon, TRUE); // 设置大图标 SetIcon(m_hIcon, FALSE); // 设置小图标 // TODO:

2021-03-31 15:01:27 192

原创 MFC窗口的创建

1.1新建windows桌面向导2.2右击头文件添加.h文件,右击源文件添加.cpp文件2.2.2头文件:#include <afxwin.h> //mfc头文件class MyApp :public CWinApp //CWinApp应用程序类{public: //程序入口 virtual BOOL InitInstance();};class MyFrame :public CFrameWnd //窗口框架类{public: MyFrame();};

2021-03-31 14:48:43 236

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除