自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 啥事

斯蒂芬是啥的啥的啥的地方

2010-04-24 08:36:00 461

转载 MFC中对话框的数据交换(DDX)和数据校验(DDV)

MFC中对话框的数据交换(DDX)和数据校验(DDV)DDX : dialog data exchangeDDV : dialog data validation文档描述MFC中的DDX DDV机制,如何使用DDX_和DDV_ 函数和定制自己的DDX_ ,DDV_函数;Dialog Data Exchange概要:对话框的数据交换不依赖于任何宏来实现,全部依赖于C++代码实现,唯一特别之处在于

2007-03-12 08:57:00 922

转载 from VC的IDE使用技巧大全:

from VC的IDE使用技巧大全:------------------------------opt 工程关于开发环境的参数文件。如工具条位置等信息; .aps (AppStudio File),资源辅助文件,二进制格式,一般不用去管他. .clw ClassWizard信息文件,实际上是INI文件的格式,有兴趣可以研究一下.有时候ClassWizard出问题,手工修改CLW文件可以解决.如果此

2006-12-09 11:46:00 877

转载 GDI+中的圆角矩形

GDI+是对GDI的一个令人兴奋的扩展,但由于某些原因,它没有提供绘制圆角矩形的函数,虽然我们可以在GDI+中使用GDI中的函数,但这样一来我们没办法在圆角矩形中使用GDI+中的纹理和透明色等新特性。怎么办?GDI+中有一个GraphicsPath 的类,我们可以用它构造各种形状并且可用任何画刷来填充这些形状。本源码中提供了一个可以加到任何工程中的函数,并用它来绘制了一个圆角矩形,矩形的远郊程度可

2006-12-08 16:08:00 1007

转载 GDI+编程(二)使用画笔

画笔常用于绘制图形的轮廓.GDI+的画笔除了具有常见的色彩和宽度属性外,还具有对齐方式,线帽,变换方式等属性。GDI+中通过Pen类来定义画笔对象。 (一)、构造与使用画笔 Pen(brush, width); //用颜色与线宽构造一个画笔 Pen(color, width); //用画刷与宽度构造一个画笔例子: Pen pen(Color(255,

2006-12-08 14:45:00 1086

转载 GDI+编程基础(一)GDI+ Vs GDI

GDI+编程基础(一)GDI+ Vs GDI下载源代码一、GDI  GDI是位于应用程序与不同硬件之间的中间层,这种结构让程序员从直接处理不同硬件的工作中解放出来,把硬件间的差异交给了GDI处理。GDI通过将应用程序与不同输出设备特性相隔离,使Windows应用程序能够毫无障碍地在Windows支持的任何图形输出设备上运行。例如,我们可以在不改变程序的前提下,让能在Epson点式打印机上工作的

2006-12-08 14:15:00 923

转载 『VC++技术内幕』学习笔记(5)

『VC++技术内幕』学习笔记(5) 第五篇:基本事件处理    我们已经知道MFC库应用程序框架调用CView视图类的虚函数OnDraw来完成屏幕显示。其实CView和CWnd类包含了几百个成员函数,在MSDN中可以看

2006-12-05 21:00:00 911

转载 映射模式简介

『VC++技术内幕』学习笔记 第六篇:映射模式    在此篇之前我们已经学会了在窗口显示图形,更准确的说是在窗口指定位置显示图形或文字,我们使用的坐标单位是象素,称之为设备坐标。看下面语句: pDC->Rectangl

2006-12-05 20:55:00 1781

原创 一个关于时钟的非常简单的小例子

在View类中:第一步:View.h中:声明:int   x;第二步:View.cpp中:void CScrollTextView::OnDraw(CDC* pDC){ CScrollTextDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc)  return;    TRACE("this is a lit

2006-12-05 10:46:00 795

转载 专题: 关于Timer

SDK编程笔记 — 计时器篇 两个计时器API的讨论 etTimer函数用于创建一个计时器,KillTimer函数用于销毁一个计时器。计时器属于系统资源,使用完应及时销毁。   SetTimer的函数原型如下:UINT_PTR SetTimer( HWND hWnd, UINT_PTR nI

2006-12-05 09:45:00 1214 1

原创 专题:添加进度条

当打开一个.vec类型的文件时,在状态栏处显示进度:第一步: 新建一个类 CProgStatusBar  继承CStatusBar状态栏类;第二步:在MainFrm主框架类,添加进度条状态栏,//在MainFrm.h中:        添加头文件:     #include"ProgStatusBar.h"  添加进度条:     CProgStatusBar  m

2006-12-04 11:17:00 1011

原创 发现:获取状态条的不同方法

也拿上个专题来说:它使用的方法如下:    char text[100];    CMainFrame *pMainFrame=(CMainFrame *)AfxGetApp()->GetMainWnd();    wsprintf(text,"mouse.x=%d mouse.y=%d",point.x,point.y);    pMainFrame->m_wndStatusBar.Se

2006-12-04 08:52:00 819

原创 发现:关于Shift键

原来左右两个Shift键因为编码的不同,都分别有不同的标识,就拿上个专题的代码来说:void CMainFrame::OnUpdateKeyShift(CCmdUI *pCmdUI) {   pCmdUI->Enable(::GetKeyState(VK_LSHIFT) } VK_LSHIFT:说明左边的Shift键按下的时候程序有响应,但是对右Shift键并没有说明,当我们按下右Shif

2006-12-04 08:38:00 1093

原创 错误处理:error C2018: 未知字符“0xa1”

编译时产生的错误如下:error C2018: 未知字符“0xa1”;说明:这可能是从其他文本资源复制代码进来导致的字符转换的问题,有看不见的非法字符,估计在头尾部分。解决办法:把代码照原样重新敲进去或者删除一下空格即可. 

2006-12-03 21:07:00 10505 2

原创 专题:编辑状态栏

第一步: //添加状态显示框,在MainFrm.cpp中  static UINT indicators[] ={ ID_SEPARATOR,           // 状态行指示器 ID_SEPARATOR,           // 状态行指示器 ID_LINEBAR,    //新增的状态显示框 ID_RECTANGLEBAR, ID_INDICATOR_CLOCK,//时钟 ID_

2006-12-03 21:00:00 1384

原创 专题:图形绘制

      专题二:图形绘制 提纲:属性方面的设置(添加)画图位图,文件操作的简单介绍CRgn类的介绍Normalize()函数鼠标的捕获具体内容:一、          属性方面的设置:1.       添加画笔和画刷 //实现对图形属性的设置(1)在View类当中添加画笔和画刷颜色的变量,并在构造函数中初始化View.h中:COLORREF

2006-11-30 10:53:00 1177

转载 电脑一族的护眼方法

电脑一族的护眼方法: 眼珠运动法 头向上下左右旋转时,眼珠也跟着一起移动。 眨眼法 头向后仰并不停的眨眼,使血液畅通。眼睛轻微疲劳时,只要做2~3次眨眼运动即可。 眼睛体操 中指指向眼窝和鼻梁间,

2006-11-29 10:06:00 1222

转载 关于 SHFILEOPSTRUCT

 在Windows的shellapi文件中定义了一个名为SHFileOperation()的外壳函数,用它可以实现各种文件操作,如文件的拷贝、删除、移动等,该函数使用起来非常简单,它只有一个指向SHFILEOPSTRUCT结构的参数。使用SHFileOperation()函数时只要填写该专用结构--SHFILEOPSTRUCT,告诉Windows执行什么样的操作,以及其它重要信息就行了。SHFil

2006-11-27 16:31:00 13627

原创 利用递归的方法复制文件夹

递归的方法:CopyFolderAllFiles(CString csSourceFolder, CString csNewFolder){    CFileFind f;    BOOL bFind=f.FindFile(csSourceFolder+"//*.*");    while(bFind)    {        bFind = f.FindNextFile();       

2006-11-27 16:08:00 1985

原创 解决:关于 SHFILEOPSTRUCT 的使用遇到的问题 之二

如果我们要把一个文件复制到一个指定文件夹中,并且,它在该文件夹中的名字我们已经知道了,那么可以用以下的方法,使代码更加简单: CString StrSourceFile=strfilepath; CString StrDestFile="F://VCNET//Vector//Vector//Debug//res//table.bmp"; if(::CopyFile(StrSourceFil

2006-11-27 15:54:00 964

原创 解决:关于 SHFILEOPSTRUCT 的使用遇到的问题

关于这个CString 和 char[]的问题终于解决了有个非常妙的解决办法,利用strcpy函数来解决CString ;CString StrSourceFile=strfilepath;                               //strfilepath是一个CString类型的变量,记录源文件的地址CString StrDestFile="F://VCNET//V

2006-11-27 15:40:00 842

转载 VC常用数据类型转换

VC字符串转换一、BSTR、LPSTR和LPWSTR    在Visual C++.NET的所有编程方式中,我们常常要用到这样的一些基本字符串类型,如BSTR、LPSTR和LPWSTR等。之所以出现类似上述的这些数据类型,是因为不同编程语言之间的数据交换以及对ANSI、Unicode和多字节字符集(MBCS)的支持。  那么什么是BSTR、LPSTR以及LPWSTR呢?  BSTR

2006-11-27 14:31:00 605

原创 关于 SHFILEOPSTRUCT 的使用遇到的问题

想应用关于 SHFILEOPSTRUCT 实现文件的复制,在网上搜到了如下的代码:char FromBuf[]= "f://*.*/0";//如果是上面的就可以,换成下面的就不可以,为什么??//CString strFrom = "f://*.*"; LPTSTR FromBuf = (LPTSTR)(LPCTSTR)strFrom; charToBuf[]= "c://"; SHFILEO

2006-11-27 14:28:00 1635 1

原创 如何打开文本文件

实例一:CFileDialog myfiledlg(true,NULL,NULL,0,"文本文件(*.txt)|*.txt");myfiledlg.m_ofn.lpstrTitle=titletext; //对话框标题if(myfiledlg.DoModal()==IDOK){CString strfilepath=myfiledlg.GetPathName();//获取文件路径与名称CStd

2006-11-27 08:55:00 1418

原创 打开位图文件的方法

在View类的事件里面选中ID_FILE_OPEN,编写COMMAND函数,在这个消息响应函数中编写如下代码:CString  strfilepath; //获取文件的路径  m_bOpen=true; //判断是不是打开文件void CLoadImageView::OnFileOpen(){  m_bOpen=true;    CFileDialog pCFileDialog(tru

2006-11-24 21:00:00 1732

原创 画五角星

原创: #include "math.h"double pi = 3.1415926535; void CVectorView::OnDraw(CDC* pDC){ CVectorDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc)  return;   double percentY,percentX1,percentX2; 

2006-11-24 13:57:00 1479

空空如也

空空如也

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

TA关注的人

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