ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:27.25KB ,
资源ID:17843217      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17843217.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(VC编程小技巧Word文档下载推荐.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

VC编程小技巧Word文档下载推荐.docx

1、TRUE;让窗口居中显示以下两种方法可任选其一:在应用程序类(CxxxApp)的 InitInstance() 函数中加入:CenterWindow( GetDesktopWindow() );在主框架类(MainFrm.cpp)的OnCreate()函数中加入:intCMainFrame:OnCreate(LPCREATESTRUCTlpCreateStruct)if(CFrameWnd:OnCreate(lpCreateStruct)=-1)-1;TODO:Deletethesethreelinesyoudontwantthetoolbartobedockablem_wndToolBar.

2、EnableDocking(CBRS_ALIGN_ANY);EnableDocking(CBRS_ALIGN_ANY);DockControlBar(&m_wndToolBar);CenterWindow(GetDesktopWindow();/使窗口打开时处于屏幕正中0;如何修改窗口标题窗口标题一般形式为:文档标题 - 程序标题1、设置文档标题:在文档类(CxxxDoc)的OnNewDocument()函数中加入语句:SetTitle(文档名TextEditorDoc.cpp:CTextEditorDoc:OnNewDocument()(!CDocument:OnNewDocument()F

3、ALSE;addreinitializationcodehere(SDIdocumentswillreusethisdocument)未命名.txt/设置文档标题2、设置程序标题:在框架类(CMainFrame)的PreCreateWindow()函数中加入语句:m_strTitle = _T(程序标题MainFrm.cpp:PreCreateWindow(CREATESTRUCT&cs)if(!CFrameWnd:PreCreateWindow(cs)ModifyWindowclassorstylesbymodifyingCREATESTRUCTcsm_strTitle=_T(文本整理器/设

4、置程序标题以上两点比较适用于视图-文档结构的程序,在新建文档时,系统会自动运行OnNewDocument()函数,在其中可以设置合适的标题。对于未采用文档的程序可以用下面的方法修改标题:3、修改窗口标题:修改窗口标题一般在打开文件函数OnFileOpen()和另存为函数OnFileSaveAs()中进行,可以使用下面的函数:AfxGetMainWnd()-SetWindowText(文档标题+ - 其中文档标题和程序标题可使用定义过的串变量。项目篇如何干净的删除一个类?1、先删除项目中对应的.h和.cpp文件,(选中后用Delete键删除)2、保存后退出项目,到文件夹中删除实际的.h和.cpp

5、文件;3、删除.clw文件;4、重新进入项目,进行全部重建(rebuild all)。如何建立一个新类?从“插入”(Insert)菜单中选择“新建类”(New Class),在弹出的对话框中选择基类(Base class),在Name中输入新类的名字(一般都以C开头)即可。如果想要建立一个没有基类的自定义类,则在New Class对话框中把Class type设置为generic,再输入类名即可。如何把外来文件添加到项目中?先把外来文件复制到当前项目的目录下,从“项目”(Project)菜单下选择“添加项目”(Add to Project)下的“Files”菜单项,从弹出的打开文件对话框中把外

6、来文件打开即可。如何在一个工作区中打开多个项目?一般编程者都有这样的经历:做了一个项目,由于不满意,想从头重做,但又想把旧项目的一些可用内容拷到新项目中来,以免做重复工作,这时就需要在新项目中打开旧项目。先打开新项目,从“项目”(Project)菜单下选择“插入项目到工作区”(Insert Project into Workspace),从弹出的打开文件对话框中打开旧项目的.asp文件即可。之后,可以利用“项目”(Project)菜单下的“设置活动项目”(Select Active Project)的选项中切换各打开的项目。注意:在一个工作区中打开的各项目不能同名。如何把项目中的文件分类存放?

7、当我们往项目中添加新类时,它会把源文件放在Source Files下,头文件放在Header Files下。当项目中文件很多时,管理不便,最好添加新节点,把文件分类放置。右击项目节点树的根节点,选择“New Folder.”,在弹出的对话框中填入新节点名,则新节点就建立了,用鼠标节点树中的文件拖入新节点,就可以把文件分类了。以上分类只是在项目的节点树中分类,它不影响文件在磁盘上的位置,所有.cpp文件和.h文件仍在项目的根目录下,最好文件本身也能分类存放在不同文件夹中。在Windows下,用“新建文件夹”在项目的根目录下建立子文件夹,如DialogClass,把所有对话框类的.cpp文件和.h

8、文件拖入其中。回到VC下,右键单击项目树中更改了路径的节点,选择“Properties”,在弹出的对话框中修改文件路径,如:把原路径“.Dialog1.cpp”改为“.DialogClassDialog1.cpp”。打开Dialog1.cpp文件,修改它包含的文件路径。#include stdafx.hPluckBox.hDialog1.h改为:.PluckBox.h打开ClassWizard,它会提示你文件不存在,单击“确定”后,从对话框中用“Browse.”选择文件所在路径,则ClassWizard也可正常使用了。编辑篇编辑代码时,跟随提示消失了怎么办?单击“工具”(Tools)菜单中的“

9、设置”(Options)菜单项,在弹出的Options对话框中选择Editor制表页,把它最下方的四个复选框都选中(Auto list member、Auto type info、Code comments、Auto parameter info),这样,当用户输入“-”或“.”时,会自动显示跟随提示,减少了输入负担。对话框篇如何修改对话框的背景色在对话框的OnPaint()函数中加入下面语句:CRect rect;GetClientRect(&rect);/计算对话框的尺寸dc.FillSolidRect(&rect,RGB(192,248,202);/绘制对话框背景色如何让弹出式对话框具有

10、统一的背景色在应用程序类CxxxApp的InitInstance()函数中加入下面的语句:SetDialogBkColor( RGB(192,248,202) );则所有用户定义的弹出式对话框都以RGB(192,248,202)为背景色,就不需要逐个进行设置了。如何让打开文件对话框能进行多项选择在定制打开文件对话框时,增加OFN_ALLOWMULTISELECT属性,就可以使打开文件对话框进行多选了。CFileDialog m_Dlg( TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT| OFN_ALLOWMULTISELECT,

11、 NULL, NULL );之后,用GetStartPosition()函数获取选择的起始文件位置,用GetNextPathName()函数获取各位置上的文件名。if( m_Dlg.DoModal() = IDOK )POSITION pos;pos = m_Dlg.GetStartPosition();while( pos )m_Path = m_Dlg.GetNextPathName(pos);为什么用打开文件对话框选择多个文件到一定数目时,文件没有打开?CFileDialog为文件列表设置有缓冲区,当选择文件过多时,会造成缓冲区溢出,造成一些文件没有被打开。可以采用自定义大缓冲区代替系统

12、缓冲区的方法解决。/定制打开文件对话框char* pBuf = new char20480;/申请缓冲区m_Dlg.m_ofn.nMaxFile = 20480;/让pBuf代替CFileDialog缓冲区m_Dlg.m_ofn.lpstrFile = pBuf;m_Dlg.m_ofn.lpstrFile0 = NULL;delete pBuf;/回收缓冲区提示对话框(MessageBox)在视类和对话框类中可使用MFC函数中用的MessageBox()函数弹出提示对话框。这个函数原型为:int MessageBox(LPCTSTR lpszText,LPCTSTR lpsCaption=NU

13、LL,UINT nType=MB_OK);参数:lpszText 显示的字符串lpsCaption 对话框的标题nType 风格,可为如下值的组合:指定下列标志中的一个来显示消息框中的按钮,标志的含义如下。MB_ABORTRETRYIGNORE:消息框含有三个按钮:Abort,Retry和Ignore。MB_OK:消息框含有一个按钮:OK。这是缺省值。MB_OKCANCEL:消息框含有两个按钮:OK和Cancel。MB_RETRYCANCEL:Retry和Cancel。MB_YESNO:Yes和No。MB_YESNOCANCEL:Yes,No和Cancel。指定下列标志中的一个来显示消息框中的

14、图标:标志的含义如下。MB_ICONEXCLAMATION:MB_ICONWARNING:一个惊叹号出现在消息框。MB_ICONINFORMATION:MB_ICONASTERISK:一个圆圈中小写字母i组成的图标出现在消息框。MB_ICONOUESTION:一个问题标记图标出现在消息框。MB_ICONSTOP:MB_ICONERROR:MB_ICONHAND:一个停止消息图标出现在消息框。指定下列标志中的一个来指定缺省的按钮:MB_DEFBUTTON1:第一个按钮为缺省按钮。如果MB_DEFBUTTON2,MB_DEFBUTTON3,MB_DEFBUTTON4没有被指定,则MB_DEFBUT

15、TON1为缺省值。MB_DEFBUTTON2;第二个按钮为缺省按钮。MB_DEFBUTTON3:第三个按钮为缺省按钮。MB_DEFBUTTON4:第四个按钮为缺省按钮。例:提示文件是否存盘:int t;t=MessageBox(m_PathName+的文字已经改变,要存盘吗?,警告,MB_YESNOCANCEL | MB_ICONWARNING);if(t=0 | t=IDCANCEL)return;if(t=IDYES)OnFileSave();在文档类等其它类中不能使用MFC中的MessageBox()函数,只能使用API函数中的MessageBox()函数:int MessageBox(

16、HWND hWnd,LPCTSTR lpszText,LPCTSTR lpCaption,UINT UType);hWnd:标识将被创建的消息框的拥有窗口。如果此参数为NULL,则消息框没有拥有窗口。后三个参数与视类的MessageBox相同,但没有缺省值,必须设置。MessageBox(NULL,m_PathName+调试篇error C2146: syntax error : missing ; before identifier 如果出现这个错误且错误数目很多,通常并不是缺失了分号引起的,而是忘记了添加某头文件引起的。最常见的是新加入了对话框,然后用它的类定义了一个对象,再编译出现上面的

17、错误。解决方法是在引用新类的文件中加入#include 类名.h,再编译,错误消失。fatal error C1010: unexpected end of file while looking for precompiled header directive在一个项目中,如果用“New”向工程中添加了一个.cpp文件,编译,出错。解决方法:在新建的.cpp文件的开头加入#include 。发布篇Debug模式和Release模式早就发现用VC编译出来的.exe文件比用Turbo C编译出来的文件大了许多,于是就认为VC编译时一定加了很多没用的东西,记得当时还做过把VC自动生成的项目中自认为没

18、用的函数都删掉的傻事。后来才从网上的文章中了解到还有编译模式一说。Debug模式是用来调试用的,它生成的执行文件中含有大量调试信息,所以很大;Release模式生成的执行文件消除了这些调试信息,可用来作为成品发布。默认情况下是Debug模式,切换方法是在“编译”(Build)菜单中选“设置项目配置”(Set Active Configure)。从弹出的对话框中选择Win32 Release模式,然后再重新编译。这时在工作目录下会多出一个Release目录,其中的exe文件比Debug目录下的那个要小得多。动态链接库和静态链接库用VC做好了一个程序,拿到别人那里却不能运行,这也是很多编程者都经历

19、过的,这样的软件只能在安装有VC的机器上运行,也不应拿出去发布。实际上如果你没有使用ActiveX控件和自定义的动态DLL技术,只需把MFC的动态链接库打包到你的程序里就可以了,也就是使用静态链接库。设置方法:从“项目”(Project)菜单下选择“设置”(Settings),在弹出的对话框中的General选项卡下,把“User MFC in a Shared DLL”改为“User MFC in a Static Library”,关闭对话框后重新编译即可。在静态链接库下编译的文件比动态链接库的要大很多,不过,如果使用Release模式编译,一般也就几百K,它就可以在没有安装VC的机器上运

20、行了。发布VC源代码时,哪些文件可以删除?源代码是给其他VC爱好者提供参考的,如果把所有文件都打包会很大,而且也没有必要,所以为他人提供源代码时可以删除一些不必要的文件。可删除Debug文件夹和Release文件夹;原则上还可删除主文件夹中所有图标为的文件,包括.aps、.ncb、.opt、.plg等文件,它们都能在编译时重建。但一般.clw不要删除,它可能导致ClassWizard不好用。控件篇如何隐藏和显示控件用CWnd类的函数BOOL ShowWindow(int nCmdShow)可以隐藏或显示一个控件。例1:CWnd *pWnd;pWnd = GetDlgItem( IDC_EDIT

21、1 );/获取控件指针,IDC_EDIT为控件ID号pWnd-ShowWindow( SW_HIDE );/隐藏控件例2:ShowWindow( SW_SHOW );/显示控件按钮的使能与禁止用ClassWizard的Member Variables为按钮定义变量,如:m_Button1;则m_Button1.EnableWindow(true);使按钮处于允许状态m_Button1.EnableWindow(false);使按钮被禁止,并变灰显示改变控件的大小和位置用CWnd类的函数MoveWindow()或SetWindowPos()可以改变控件的大小和位置。void MoveWindow

22、(int x,int y,int nWidth,int nHeight);void MoveWindow(LPCRECT lpRect);第一种用法需给出控件新的坐标和宽度、高度;第二种用法给出存放位置的CRect对象;/获取控件指针,IDC_EDIT1为控件ID号MoveWindow( CRect(0,0,100,100) );/在窗口左上角显示一个宽100、高100的编辑控件SetWindowPos()函数使用更灵活,多用于只修改控件位置而大小不变或只修改大小而位置不变的情况:BOOL SetWindowPos(const CWnd* pWndInsertAfter,int x,int y

23、,int cx,int cy,UINT nFlags);第一个参数一般设为NULL;x、y控件位置;cx、cy控件宽度和高度;nFlags常用取值:SWP_NOZORDER:忽略第一个参数;SWP_NOMOVE:忽略x、y,维持位置不变;SWP_NOSIZE:忽略cx、cy,维持大小不变;pWnd = GetDlgItem( IDC_BUTTON1 );/获取控件指针,IDC_BUTTON1为控件ID号SetWindowPos( NULL,50,80,0,0,SWP_NOZORDER | SWP_NOSIZE );/把按钮移到窗口的(50,80)处SetWindowPos( NULL,0,0,

24、100,80,SWP_NOZORDER | SWP_NOMOVE );/把编辑控件的大小设为(100,80),位置不变SetWindowPos( NULL,0,0,100,80,SWP_NOZORDER );/编辑控件的大小和位置都改变以上方法也适用于各种窗口。单选按钮控件(Radio Button)的使用一、对单选按钮进行分组:每组的第一个单选按钮设置属性:Group,Tabstop,Auto;其余按钮设置属性Tabstop,Auto。Radio1、Radio2、Radio3为一组,Radio4、Radio5为一组设定Radio1属性:Group,Tabstop,Auto设定Radio2属性:Tabstop,Auto设定Radio3属性:设定Radio4属性:设定Radio5属性:二、用ClassWizard为单选控件定义变量,每组只能定义一个。m_Radio1、m_Radio4。三、用ClassWizard生成各单选按钮的单击消息函数,并加入内容:void CWEditView:OnRadio1()m_Radio1 = 0;/第一个单选按钮被选中OnRadio2()m_Radio1 = 1;/第二个单选按钮被选中OnRadio3()m_Radio1 = 2;/第三个单选按钮被选中OnRadio4()

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1