Visual C++
文章平均质量分 57
狮子小宝
这个作者很懒,什么都没留下…
展开
-
问:mfc中如何彻底删除控件?
答:必须手动删除对应的一声声明,实现之类。还没有这么智能.托管的应该可以。删除应该包括消息映射,消息处理的定义和声明,资源变量,和资源文件中的id。转载 2010-04-07 16:33:00 · 5415 阅读 · 1 评论 -
如何将一个vc++.net的资源添加到另一个工程中
<br />打开vs的主界面,打开一个工程,找到要拷贝走的resourseview中的资源,不管是Dialog还是什么....然后,右键选择复制,(别问我要复制谁),然后在同一个主界面程序中打开要复制到的工程,找到要复制的resourse,右键点击选择要复制的资源类别(就是Dialog还是Icon之类的),选粘贴。然后把要拷贝源的工程resourse.h,拷到目的工程里来替换即可。<br />p.s.:这招只能拷贝工程中的资源,至于里面的类跟函数,还需要自己新建。原创 2010-06-29 16:42:00 · 1320 阅读 · 0 评论 -
心得
感觉C++ premier真的很重要!原创 2010-07-23 16:59:00 · 575 阅读 · 0 评论 -
UpdateData() --MFC函数
<br />UpdateData,顾名思义,是用来刷新数据的。<br /> UpdateData(TRUE) -- 刷新控件的值到对应的变量<br /> UpdateData(FALSE) -- 拷贝变量值到控件显示例如,窗口中用 DDX_Text(pDX, IDC_EDIT1, m_usercode); 将IDC_EDIT1编辑框控件与m_usercode变量做了关联,如果修改m_usercode之后要想对应控件显示更改,则需要调用UpdateData(FALSE);反之在IDC_EDIT1的oned原创 2010-07-23 17:24:00 · 636 阅读 · 0 评论 -
OninitDialog
<br /> <br />OnInitDialog()函数是个virtual(虚函数),在它的类中用添加虚函数的方法,会发现添加的虚函数里面没有这个函数,而这个OnInitDialog函数是很有用的,在一般的添加进去的对话框的类中是不会有这个函数的,必须手工增加进去,当然不用手工写代码,手动添加时可能会出错.可以通过VC加进去,而要加的这个函数的名字不是OnInitDialog,所以很难找到.其原因是因为要加的函数是WM_INITDIALOG.<br />这个函数的添加方法是这样的,选择要加入函数的对话框,转载 2010-07-23 17:10:00 · 1178 阅读 · 0 评论 -
VC6.0与VC.net的一些差异
<br />(1) 首先看看目录文件架构的不同:(vc.net的默认安装目录为:…/ Microsoft Visual Studio .NET;而vc6.0默认安装目录为:…/Microsoft Visual Studio) <br /><br />vc.net目录下的文件目录数比vc6.0的要多出一些,但主要的目录也大体上相同。只是原来的common变为了common7,vc98变为了vc7;我们主要看一下 <br /><br />vc7和vc98下的文件有什么不同;vc.net的前几个文件目录(包括:b转载 2010-07-26 00:01:00 · 972 阅读 · 0 评论 -
c/c++运算符优先级
<br /><br />优先级<br />运算符<br />名称或含义<br />使用形式<br />结合方向<br />说明<br />1<br />[]<br />数组下标<br />数组名[常量表达式]<br />左到右 <br />()<br />圆括号<br />(表达式)/函数名(形参表) <br />.<br />成员选择(对象)<br />对象.成员名 <br />-><br />成员选择(指针)<br />对象指针->成员名 <br />2<br />-<br />负号运算符<br />-原创 2010-07-27 10:30:00 · 646 阅读 · 0 评论 -
ado学习笔记
<br />在默认情况之下,visual c++ 不支持ado对象。要在程序中使用ado独享,需要使用#import命令将ado库文件导入到工程中,代码如下<br />#import "c:/program files/common files/system/ado/msado15.dll" no_namespace rename("EOF","adoEOF") rename("BOF","adoBOF")<br />支持ado编程的库文件是msado15.dll,它的默认保存在c:/program fil转载 2010-05-31 22:33:00 · 880 阅读 · 0 评论 -
CFileFind类的使用总结
<br /><br />1、CFileFind类的声明文件保存在afx.h头文件中。<br />2、该类的实现的功能:执行本地文件的查找(查找某个具体的文件,查找某类文件x*.x*,查找所有文件*.*)<br />3、CFileFind类是CGopherFileFind和CFtpFileFind类的基类。<br />4、CFileFind类的构造函数::CFileFind()和关闭函数::Close()我会成对使用。<br />5、CFileFind类的成员函数我根据其操作特性划分为3类:查找操作类、获得文原创 2010-07-24 17:18:00 · 1353 阅读 · 0 评论 -
findfile用法
CFileFind::FindFilevirtual BOOL FindFile( LPCTSTR pstrName = NULL, DWORD dwUnused = 0 );参数pstrName以一个包含该文件的名称来找到指针。如果你传递pstrName空,FindFile (*.*)做了通配符搜索。dwUnused保留作出FindFile多态性与派生类。必须为0返回值非零如果成功,否则为0。为了获得更多的错误信息,调用Win32函数GetLastError函数备注在调用FindFile开始搜索该原创 2010-07-24 17:32:00 · 18818 阅读 · 1 评论 -
CFileFind::GetFileName方法(摘自MSDN)
<br />调用此成员函数来获取找到的文件的名称。<br /><br /><br />virtual CString GetFileTitle( ) const;<br />返回值<br />该文件的标题<br />备注<br />您必须调用至少一次,然后再调用GetFileTitle FindNextFile。<br /><br /><br />GetFileTitle是3个CFileFind的成员函数返回一些文件名称的形式之一。下面的列表描述了三个以及它们如何变化:<br /><br /><br />G翻译 2010-07-24 21:27:00 · 4199 阅读 · 0 评论 -
VC++.net 整合开发环境使用技巧【转载】
在下面我将会以条目的形式为大家描述VC.net2003的各项使用技巧,你完全可以挑选你感兴趣的内存来看,甚至不看都无所谓哈,只求你的一点支持,up一下就好,算是对我工作的鼓励吧! 首先我是在VC.net2003的环境下使用这些技巧的,当然希望你也能有一套。当然,不是说VC6就完全不能使用,只是有部分功能不能使用罢了,具体还需要你自己来试吧! 一、环境设置部分 1. 主窗口内的每一个子窗口都是可以dock的,dock在边上的子窗口在右上角有两个按扭,一个是关闭,一个是图钉。当图钉按下时,转载 2010-06-02 23:37:00 · 701 阅读 · 0 评论 -
【转载】GetSafeHwnd()作用
<br />返回窗体的m_hWnd成员(创建窗体时产生的代表窗体的实例句柄),如果为NULL,返回NULL。<br />m_hWnd保存的是这个窗口对象即这个窗口类对象的指针,并不是什么窗口句柄<br />当我们想得到一个窗口对象(CWnd的派生对象)指针的句柄(HWND)时,最安全的方法是使用GetSafeHwnd()函数,通过下面的例子来看其理由: CWnd *pwnd = FindWindow(“ExploreWClass”,NULL); //希望找到资源管理器 HWND hwnd = pwnd-转载 2010-06-06 16:55:00 · 1582 阅读 · 0 评论 -
【转载】BROWSEINFO用法
<br />Visual C++(VC)中,BROWSEINFO结构中包含有用户选中目录的重要信息。 <br /> (1)BROWSEINFO结构 <br /> ●定义 <br /> typedef struct_browseinfo <br /> { <br /> HWND hwndOwner; <br /> LPCITEMIDLIST pidlRoot; <br /> LPSTR pszDisplayName; <br /> LPCSTR lpszTitle; <br /> UINT原创 2010-06-06 16:57:00 · 1078 阅读 · 0 评论 -
【转帖】C语言运算符优先级
<br /><br />优先级<br />运算符<br />名称或含义<br />使用形式<br />结合方向<br />说明<br />1<br />[]<br />数组下标<br />数组名[常量表达式]<br />左到右 <br />()<br />圆括号<br />(表达式)/函数名(形参表) <br />.<br />成员选择(对象)<br />对象.成员名 <br />-><br />成员选择(指针)<br />对象指针->成员名 <br />2<br />-<br />负号运算符<br />-转载 2010-06-10 11:15:00 · 619 阅读 · 0 评论 -
【转】如何改变VC中控件间的TAB切换顺序
<br />在VC中,<br />首先控件没有TABINDEX属性;<br /><br />其次,如果你发现这可能是由resource.h中控件的ID值引起的。那么你就错了:<br />因为无论你如何调整resource.h中控件的ID值,都对TAB键的切换顺序不能发生任<br />何影响;<br /><br />那么,VC中的控件顺序是由什么决定的呢?该如何来修改呢?<br />在你的工程文件和工作区文件所在目录下有一同名的资源文件(*.rc),其中包含了<br />本工程所有使用到的资源。<br />在转载 2010-06-21 10:11:00 · 1350 阅读 · 1 评论 -
CListCtrl
<br /><br />cpp文件里就可以直接用了,先把几个列定下来<br />m_list.InsertColumn(0,"商品序号",LVCFMT_LEFT,120);<br />int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat , int nWidth, int nSubItem);可以插入列。iCol为列的位置,从零开始,lpszColumnHeading为显示的列名,nFormat为显示对齐方式,nWidth为显示转载 2010-08-13 17:25:00 · 558 阅读 · 0 评论 -
VSS简介
<br /><br />一般现在采用比较多的是使用VSS<br /> <br />VSS 的全称为 Visual Source Safe 。作为 Microsoft Visual Studio 的一名成员,它主要任务就是负责项目文件的管理,几乎可以适用任何软件项目。 <br /><br />源代码版本控制机制是现代软件开发中必不可少的管理机制之一,通常借助版本控制软件即Source Code Management(SCM) systems或者Version Control systems来实现。版本控制在软转载 2010-09-09 23:45:00 · 799 阅读 · 0 评论 -
VC++ 6.0中使用复选框和单选钮
<br />单选钮用来表示一系列的互斥选项,这些互斥项常常被分成若干个组,每组仅允许用户选择一个选项;复选框与单选按钮相象,不同之处是复选框代表多重选择,用户可以选择一个或多个选项。<br /> 对话框编辑器中各组控件的对齐<br /><br /> 按下Ctrl键并单击要对齐的各个控件,同时选中。最后选中的控件是对齐的基准,仔细观察,它周围的8个小方框是实心的,而其它被选控件周围的小方框是空心的。<br /><br /> 在Layout菜单中选择Make Same Size的Both,可以统一控件转载 2010-09-13 15:23:00 · 1065 阅读 · 0 评论 -
Visual Studio 2008“选项”对话框 ->“项目和解决方案”->“生成并运行”
<br /><br />确定在生成项目或其解决方案时是否自动保存更改的文件,可以同时生成的 Visual C++ 项目最大数以及运行时的一些默认行为。若要访问此对话框,请在“工具”菜单上单击“选项”,然后选择“项目和解决方案”文件夹并单击“生成并运行”。生成前保存所有更改<br />当按 F5 或从“调试”或“生成”菜单中选择“启动”或“生成”命令时,将自动保存自上次生成以来对解决方案文件和所有项目文件所做的更改,并且不进行提示。项以它们的当前名称保存。默认情况下,启用此选项。仅保存对打开文档的更改<br转载 2010-09-09 23:56:00 · 2669 阅读 · 0 评论 -
COMMAND与UPDATE_COMMAND_UI的区别——MFC
<br />UPDATE_COMMAND_UI <br /><br /> 处理菜单对应的用户界面 <br /><br />COMMAND <br /><br /> 处理该菜单对应的功能 <br /><br />传统SDK程序;要改变选单命令项状态,可以呼叫EnableMenuItem或是 <br /><br />CheckMenuItem,但这使得程序杂乱无章,因为你没有;个固定的位置和固定的原则处理命令项状态。MFC提供;种直觉并且仍旧依赖讯息观念的方式,解决这个问题,这就是UPDATE_转载 2010-09-09 23:27:00 · 1083 阅读 · 0 评论 -
在VS2008中定制Visual C++项目向导
<br />1. 向导执行过程1.1 弹出项目模板列表对话框 当用户打开“新建项目”对话框时,VS Shell将通过注册表查找所有已安装的项目模板。首先,在注册表项HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/9.0/Projects中枚举所有类型的项目,并查找名称为ProjectTemplatesDir的字符串值,该值的数据就是存放该类项目的所有项目模板的目录(模板目录);然后,VS Shell从模板目录中读取所有项目模板的向导描述文件(*转载 2010-09-09 23:43:00 · 2354 阅读 · 2 评论 -
Radio Button
<br />在对话框上添加几组Radio Button的时候,假设有三组,每组有三个Radio Button。如何使每组的Radio Button的选中/未选中状态独立?在每组中的三个Radio Button中,选中一个,其他两个就自动不被选中?另外,默认状态下,是不允许为Radio Button添加“控件型”变量的。<br />这个问题很有意思,也是设计窗体时遇到的一个小“技巧”。基本的方法是这样的:<br /><br />先用Ctrl+D设置这九个Radio button的Tab顺序,然后在每组原创 2010-09-14 22:43:00 · 936 阅读 · 0 评论 -
VC设计分割视图通用创建框架
<br /><br /> 目前基于分割视图的应用开发十分流行,分割视图技术是在同一个框架窗口下同时显示多个视图的一项技术。运用分割视图,可以在较短时间内给用户更多的信息量,从而使得用户界面更加的友好,增强了软件的可操作性。本文提出一个分割视图的通用创建框架。<br /> 1.分割视图创建框架<br /> 分割视图的创建大体上分为两个步骤:其一是创建分割窗体;然后就是处理鼠标和键盘等消息。<br /> 1) 创建分割窗体<br /> MFC提供分割窗体类CsplitterWnd,它提供了很多对于分割窗转载 2010-09-16 00:28:00 · 977 阅读 · 0 评论 -
VC++中判断一个复选框是否被选中
<br /><br />int a =is_standard_aligh.GetCheck(); <br />if (a==1)<br />{<br />AfxMessageBox("123");<br />}<br />将复选框创建一个CButton类原创 2010-09-14 16:48:00 · 1274 阅读 · 0 评论 -
CListCtrl控件的详细用法
<br /><br />这几天在做和数据库的有关操作,用到了CListCtrl控件。不是很常用它,无意之间看到很好的用法介绍。<br /> <br /> <br />本文主要介绍CListCtrl控件以下用法的实现:<br /> <br />1. CListCtrl 样式及设置<br /> <br />2. 扩展样式设置<br /> <br />3. 数据插入<br /> <br />4. 一直选中Item<br /> <br />5. 选中和取消选中Item<br /> <br />6. 得到CListC原创 2010-09-06 11:59:00 · 843 阅读 · 1 评论 -
MFC右键菜单
<br /><br />一、在资源编辑器中建立一个菜单资源 <br /> 新建一个菜单资源,比如把菜单的ID号为IDC_POPMENU。此菜单有一项两层,即有一个可弹出的菜单项,而此菜单项的弹出内容即为将要建立的弹出式菜单的内容。至于每一个菜单项的消息映射,与一般的菜单相同。 <br /> <br />二、使用CMenu类对象 <br /> CMenu类的成员函数较多,但建立弹出式菜单只需用到其中几个成员函数。<br />1、LoadMenu函数 <br />转载 2010-09-08 20:13:00 · 2910 阅读 · 0 评论 -
VC DataGrid的简单使用范例
<br />1 在VC6.0中建立MFCApp(exe)工程;<br /><br /> 2 导入DataGrid控件:<br /> 路径:Project-->Add To Project-->Conponents and Controls<br /><br /> 选择集合:<br /><br /> 选择组件,选好后别忘记“Insert”:<br /><br /> 演示目前的功能仅需要选择图片中的三个类就可以了:<br /><b转载 2010-09-17 13:07:00 · 1038 阅读 · 0 评论 -
CListCtrl控件的详细用法
<br /><br />这几天在做和数据库的有关操作,用到了CListCtrl控件。不是很常用它,无意之间看到很好的用法介绍。<br /> <br /> <br />本文主要介绍CListCtrl控件以下用法的实现:<br /> <br />1. CListCtrl 样式及设置<br /> <br />2. 扩展样式设置<br /> <br />3. 数据插入<br /> <br />4. 一直选中Item<br /> <br />5. 选中和取消选中Item<br /> <br />6. 得到CListC原创 2010-09-06 11:59:00 · 743 阅读 · 0 评论 -
http://tieba.baidu.com/f?kz=437546859
<br />如题转载 2010-09-21 20:25:00 · 6739 阅读 · 0 评论 -
VC智能感知 clw ncb bsc文件的作用
<br />VC智能感知历史-IntelliSense History, Part 1 大家好,我是Jim Springfield. 我要开始解释我们的计划,关于从根本上改变C / C + +的智能感知和代码浏览功能的工作方式。最近vs2005的GDR和vs2008的变化是很重要的,但他们并没有将这些特点的真正实现。这个文章涵盖了这个功能的历史,并帮助我们解释智能感知如何在vc10(VS2008的下一个Release)完成的情况。 大部分的摘要都是源自我记忆中的事件和安装所有这些Visual C + +旧版转载 2010-09-21 15:19:00 · 1431 阅读 · 0 评论 -
VC中MessageBox的常见用法
<br />MessageBox用法<br />消息框是个很常用的控件,属性比较多,本文列出了它的一些常用方法,及指出了它的一些应用场合。<br />1.<br />MessageBox("这是一个最简单的消息框!");<br />2.<br />MessageBox("这是一个有标题的消息框!","标题"); <br />3.<br />MessageBox("这是一个确定 取消的消息框!","标题", MB_OKCANCEL ); <br />4.<br />MessageBox("这是一个警告的消息框转载 2010-09-25 21:18:00 · 523 阅读 · 0 评论 -
看有没有高手能解决这个SQL远程连接失败问题
<br />按以下方法,排除<br /><br />Windows防火牆把1433設置為例外,或關掉Windows防火牆。<br />程序—Microsoft SQL Server 2005—配置工具—SQL Server 外围应用配置器—服务和连接的外围应用配置器—<br />1、MSSQLserver(实例名)—DataBase Engine—远程连接—(设置选项)<br />在下方选项<br />2、SQL Server Browser—服务(停止时只本机访问)<br />3、程序—Microsoft转载 2010-09-28 11:26:00 · 133 阅读 · 0 评论 -
CListCtrl::GetItemCount
<br />CListCtrl::GetItemCount<br /><br />Retrieves the number of items in a list view control.intGetItemCount() const;Return Value<br />The number of items in the list view control.原创 2010-09-28 23:36:00 · 4827 阅读 · 0 评论 -
【另】滑动条控件(CSLIDERCTRL)使用说明
<br />滑动条控制(Slider Control)也叫轨道条控制,其主要是用一个带有轨道和滑标的小窗口以及窗口上的刻度,来让用户选择一个离散数据或一个连续的数值区间。通过鼠标或键盘来进行数据的选择操作,这在WIN98/95中的很多应用程序中都可以看到,如控制面板中的鼠标等,滑动条既可以是水平方式的也可以是垂直方式的。滑动条控制的风格如下:<br /> TBS_HORZ 滑动条是水平方向的<br /> TBS_VERT 滑动条是垂直方向的<br /> TBS_LEFT 滑动条位于窗口左侧<br转载 2010-11-27 21:30:00 · 967 阅读 · 0 评论 -
滑动动条控件Slider的用法
<br /><br />在MFC中滑动条(CSliderCtrl)是个常用的控件,用法如下:<br /> <br />主要要方法有:<br /> <br />1、设置、取得滑动范围:<br /> <br /> void SetRange( int nMin, int nMax, BOOL bRedraw = FALSE ); <br />void GetRange( int& nMin, int& nMax ) const;<br /> <br /> <br /> <br />2、设置、取得按下左右箭头滑动原创 2010-11-27 21:27:00 · 1683 阅读 · 0 评论 -
VC 判断选中的 单选框 复选框的
<br /><br />一 vc对话框中的组框控件起什么作用?<br />1)它可将多个单选按钮圈起来,再将你想设为默认按钮的那个按钮的Group属性选中,其它按钮的Group属性取消。<br />这样这些RADIO按钮就成了一组可以实现在他们之间进行单选,这4个按钮只有group属性的可以映射一个变量,其类型为int,这个变量可以用来返回用户选择了哪个选项,0表示选择了第一个,1表示选择了第二个,<br />....依此类推<br />这样以后就可以分别对不同的RADIO按钮进行消息映射了<br /> <转载 2010-10-14 16:22:00 · 4531 阅读 · 0 评论 -
不显示删除回复显示所有回复显示星级回复显示得分回复 如何将工具栏按钮和菜单栏的选项关联起来执行同一个动作啊
<br />两者设为相同的ID即可转载 2010-10-14 00:57:00 · 670 阅读 · 0 评论 -
启用和禁用工具栏按钮!
<br />添加一个用户界面处理函数<br /> 1) 按照例1 3关于添加一个菜单命令处理函数所示的步骤,但是这时选用U P D AT E _<br /> C O M M A N D _ U I,而不是C O M M A N D。<br /> 2) 添加下面的代码到新的处理函数中,如果要启用菜单项,则m _ b W z d为T R U E。<br /> void CWzdVi e w : : O n U p d a t e W z d Type(CCmdUI* pCmdUI转载 2010-10-14 00:59:00 · 1572 阅读 · 0 评论 -
break和continue的区别
<br />1. break可用于switch语句,表示跳出整个switch块,而continue则不能用于switch语句 2. 它们都可用于循环语句的循环体,所谓的区别也应该是它们对循环次数的影响不同。break用于立即退出当前循环,而continue仅跳过当次循环(本次循环体内不执行continue语句后的其它语句,但下次循环还会执行)。举例说明。 int i; int s = 0; for (int i = 1; i <= 10; i++) { if (i == 6) bre转载 2010-11-01 12:44:00 · 570 阅读 · 0 评论