摘要: 由于项目需要,查阅了一下CFileDialog类,以满足程序自动读取配置文件的需求,现在小小记录一下!CFileDialog类封装了Windows常用的文件对话框,提供个一种简单的与windows标准相一致的文件打开和文件存盘对话框功能。要使用CFileDialog类,首先要构造一个对象,项目实例: CFileDialog fileDlg(true, "cfg", "*.cfg", OFN_FILEMUSTEXIST| OFN_HIDEREADONLY,配置文件(*.cfg)|*.cfg||", this);CFileDialog构造函数原型为 阅读全文
posted @ 2013-05-24 15:59 涵野 阅读(296) 评论(0) 推荐(0) 编辑
摘要: void WriteCVS(CString testStr){CStdioFile clsFile;CString filepath; // 得到存文件的路径CTime m_Time = CTime::GetCurrentTime(); // 获取当前时间CString m_str = m_Time.Format("%Y%m%d");//CFileDialog cfile(false,NULL,m_str,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_EXPLORER ,".csv");if(IDOK==cfile.D 阅读全文
posted @ 2013-05-24 10:26 涵野 阅读(2827) 评论(0) 推荐(0) 编辑
摘要: HANDLE m_hMutex = ::CreateMutex(NULL,TRUE,m_pszName);if (GetLastError() == ERROR_ALREADY_EXISTS){ AfxMessageBox("您已经运行了本软件!");//弹出对话框确认不能运行第二个实例。 return FALSE;}让程序只运行一个实例的四种方法源代码下载:http://d.download.csdn.net/down/907655/magictong综述:让一个程序只运行一个实例的方法有多种,但是原理都类似,也就是在程序创建前,有窗口的程序在窗口创建前,检查系统中是否已 阅读全文
posted @ 2013-05-22 17:31 涵野 阅读(4888) 评论(0) 推荐(0) 编辑
摘要: 1.返回当前程序文件全文件名char pBuf[MAX_PATH];//存放路径的变量GetCurrentDirectory(MAX_PATH,pBuf);//获取程序的当前目录strcat(pBuf,"\\");strcat(pBuf,AfxGetApp()->m_pszExeName);strcat(pBuf,".exe");//获取程序全文件名CString filename;filename = pBuf;//char*转换为CString如此简单AfxMessageBox(filename);2.方法2:char path[MAX_PAT 阅读全文
posted @ 2013-05-20 14:59 涵野 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 改变Edit字体颜色:1、CMyDlg类中添加成员变量:CBrush m_Brush;2、OnInitDialog中初进行设置:m_brush.CreateSolidBrush(RGB(0,255,255));3、添加消息响应函数:OnCtlColorif(nCtlColor == CTLCOLOR_EDIT){ if(pWnd->GetDlgCtrlID()== IDC_EDIT1) { pDC->SetTextColor(RGB(255,255,0)); //文字颜色 pDC->SetBkColor(RGB(251, 247, 200)); pDC->SetBkMo 阅读全文
posted @ 2013-05-20 14:54 涵野 阅读(3089) 评论(0) 推荐(0) 编辑
摘要: 1、建立基于对话框工程:My2、添加控件:静态文本控件:IDC_STATIC1编辑框控件:建立一关联变量CEdit m_EditControl3、在OnInitDialog中添加如下代码:CFont * m_pFont; m_pFont = new CFont; m_pFont->CreateFont(16, // nHeight 0, // nWidth 0, // nEscapement 0, // nOrientation FW_BOLD, // nWeight TRUE, // bItalic FALSE, // bUnderline 0, // cStrikeOut ANSI_ 阅读全文
posted @ 2013-05-20 14:53 涵野 阅读(8336) 评论(0) 推荐(1) 编辑
摘要: 绘制任意线条:1、创建基于单文档工程:DrawCDrawView类中添加成员变量:CPoint m_ptOrigin;BOOL m_bDraw;2、CDrawView()中初始化:m_ptOrigin = point;m_bDraw = false;3、添加消息响应函数:WM_LBUTTONDOWN WM_LBUTTONUP WM_MOUSEMOVE4、左键按下时:m_ptOrigin = point;m_bDraw = true;5、左键抬起:m_bDraw = false;6、鼠标移动时: //画连续线条CClientDC dc(this);if(m_bDraw) { dc.MoveTo( 阅读全文
posted @ 2013-05-20 14:52 涵野 阅读(16987) 评论(0) 推荐(0) 编辑
摘要: CDC,CPaintDC,CClientDC,CWindowDC在使用任何绘图函数之前必须建立一个设备环境对象。CDC是Windows绘图设备的基类CDC的使用:OnDraw(CDC* pDC),因此OnDraw中可以直接使用CDC类编写代码。其他函数中要使用CDC类,需使用GetDC函数和ReleaseDC函数,实现申请CDC类得指针和释放CDC类的指针。CPaintDC使用示例:在视图类中使用CPaintDC进行窗口的重绘当用户区内容需要被刷新时,系统向应用程序消息队列发WM_PAINT消息,调用OnPaint函数进行处理。如果视图类中没有OnPaint函数,窗口重绘时调用MFC底层代码里 阅读全文
posted @ 2013-05-20 14:51 涵野 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 1、创建基于单文档工程:KeyInput2、在CKeyInputView中添加成员函数:public:bool m_bShiftDown;CPoint m_ptCharacter;3、CKeyInputView()中初始化:m_bShiftDown = ture;m_ptCharacter.x = 0;m_ptCharacter.y = 0;4、CKeyInputView()中添加消息响应函数:WM_KEYDOWN 、 WM_CHAR 、WM_SETFOCUS5、OnKeyDown中:if(nChar == VK_SHIFT){ m_bShiftDown = m_bShiftDown ? fa 阅读全文
posted @ 2013-05-20 14:50 涵野 阅读(305) 评论(0) 推荐(0) 编辑
摘要: CStringArray用法:列表框:m_list单选按钮:m_radio int(指其中一个属性设置为:组)文本框:m_pos int 、m_str CString按钮:OnCheck()1、创建基于对话框的工程StringArray.2、在CStringArrayDlg构造函数中添加:public:CStringArray m_array;3、按钮单击事件:OnCheck代码void CStringArray1Dlg::OnCheck(){ UpdateData(true); switch(m_radio) { int i; case 0: if(m_pos < 0 || m_pos 阅读全文
posted @ 2013-05-20 14:49 涵野 阅读(955) 评论(0) 推荐(0) 编辑