VC6.0中控件及按钮的设置和使用资料
vc++6.0中radio控件的使用

先为对话框加上2个radio button,分别是Radio1和Radio2。
问题1:如何让Radio1或者Radio2默认选上?如何知道哪个被选上了?关键是选上,“默认”只要放在OnInitDialog()即可。
三种方法可以让它选上,第一种:((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE);//选上((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(FALSE);//不选上((CButton *)GetDlgItem(IDC_RADIO1))->GetCheck();返回1表示选上,0表示没选上第二种:关联一个congtrol型变量(子类化),好ctrl+W(即打开classwizard),点开Member Variables,咦?怎么没有IDC_RADIO1这个ID?原来是没有分组。
因为radio button通常都是成组使用的,在一组里面是互斥的。
取消,回到对话框资源面板,右键Radio1查看属性把Group选上,那么,Radio1和Radio2就是一组了(怎么知道他们是一组的?后面说)。
此时,就可以为Radio1增加一congtrol型变量m_ctrlRadio1了。
如下:m_ctrlRadio1.SetCheck(TRUE);同样可以使用GetCheck()获取状态。
第三种:关联一个int型变量(同样需要先分组)m_nRadio1,打开对话框构造函数,你会发现有:m_nRadio1 = -1;m_nRadio1别赋值-1表示哪个都没有选上。
如果你把-1改成0,就会发现Radio1默认被选上了,依此类推,m_nRadio1的值为1就是第二个被选上了(这里同样有问题,哪个是第一个?哪个是第二个?)。
获取状态很简单,UpdateData(TRUE)后判断m_nRadio1的值即可。
vc++6.0调试方法(附有快捷键)

调试程序可以帮助了解程序是怎样运行的。
1、如何快速地规范代码缩进格式选中所需要规范的代码,按shift+F82、如何在Release状态下进行调试Project->Setting…->Project Settings对话框,选择Release状态。
“C/C++”标签页中的Category选General,Optimizations选Disable(Debug),Debug info选Program Database。
在“Link”标签页中选中Generate debug info复选框。
注:只是一个介乎Debug和Release的中间状态,所有的ASSERT、VERIFY都不起作用,函数调用方式已经是真正的调用,而不查表,但是这种状态下QuickWatch、调用队列跟踪功能仍然有效,和Debug版一样。
3、Release和Debug有什么不同。
Release版称为发行版,Debug版称为调试版。
Debug中可以单步执行、跟踪等功能,但生成的可执行文件比较大,代码运行速度较慢。
Release版运行速度较快,可执行文件较小,但在其编译条件下无法执行调试功能。
Release的exe文件链接的是标准的MFC DLL(Use MFC in a shared or static dll),比如MFC42.DLL。
这些DLL在安装Windows的时候,已经配置,所以这些程序能够在没有安装Visual C++ 6.0的机器上运行。
而Debug版本的exe链接了调试版本的MFC DLL文件,如MFC42D.DLL。
在没有安装Visual C++6.0的机器上不能运行,因为缺MFC42D.DLL等,除非选择use static dll when link。
4、ASSERT和VERIFY有什么区别ASSERT里面的内容在Release版本中不编译,VERIFY里面的内容仍然编译,但不再判断真假。
所以后者更安全一点。
vc++6.0调试方法(附有快捷键)

调试程序可以帮助了解程序是怎样运行的。
1、如何快速地规范代码缩进格式选中所需要规范的代码,按shift+F82、如何在Release状态下进行调试Project->Setting…->Project Settings对话框,选择Release状态。
“C/C++”标签页中的Category选General,Optimizations选Disable(Debug),Debug info选Program Database。
在“Link”标签页中选中Generate debug info复选框。
注:只是一个介乎Debug和Release的中间状态,所有的ASSERT、VERIFY都不起作用,函数调用方式已经是真正的调用,而不查表,但是这种状态下QuickWatch、调用队列跟踪功能仍然有效,和Debug版一样。
3、Release和Debug有什么不同。
Release版称为发行版,Debug版称为调试版。
Debug中可以单步执行、跟踪等功能,但生成的可执行文件比较大,代码运行速度较慢。
Release版运行速度较快,可执行文件较小,但在其编译条件下无法执行调试功能。
Release的exe文件链接的是标准的MFC DLL(Use MFC in a shared or static dll),比如MFC42.DLL。
这些DLL在安装Windows的时候,已经配置,所以这些程序能够在没有安装Visual C++ 6.0的机器上运行。
而Debug版本的exe链接了调试版本的MFC DLL文件,如MFC42D.DLL。
在没有安装Visual C++6.0的机器上不能运行,因为缺MFC42D.DLL等,除非选择use static dll when link。
4、ASSERT和VERIFY有什么区别ASSERT里面的内容在Release版本中不编译,VERIFY里面的内容仍然编译,但不再判断真假。
所以后者更安全一点。
vc6.0配置及使用教程

步骤是:(先工程—后文件—编译—连接---运行)1,建立一个工程,“文件”——“新建”,出现下面界面:选择“Win32 Console Application”(控制台应用程序,左边倒数第三个),命名工程名称,选择保存位置,点击“确定”,进入下一步,看到如下提示界面:建立一个空工程,对应其他需要的你一可以建立别的工程;点击“完成”,之后:显示你创建的工程的信息。
2,再在有一个的工程的条件下,我们再建立一个源文件;“文件”——“新建”(快捷键Ctri+N),出现:建立源文件,选择“C++ Source ”,一般都是建立这种文件的(适用在当文件中适用)如果要建立头文件的话,选择“C/C++ Header File”,(适用在多文件工程中使用)命名,文件名称,点击“确定”,之后:进入编辑区,在主界面编写代码:如下编写完之后呢:可以按编译按钮调试程序,看看有没有错误,有的话改正,没有的话就可以再按连接按钮检查连接(多文件工程时常用,检查文件间是否正常连接),最后,点运行按钮,就可以运行了。
如果是您有代码如:cpp文件,或 .h 文件,想添加都VC6.0里来测试的话,可以这样做:首先,要理解一下文件扩展名为:cpp和.h文件扩张名是.h,代表的是头文件,一般是书写一些函数原型,以及一些在整个程序中常用到的结构体,频繁使用的函数说明,定义等等;文件扩张名为,cpp的,是C++中的源文件,也是最常用到的文件,每建立一个工程都要至少一个源文件(至少要有一个函数入口——主函数main() ),包含了核心代码;建立与运行说明:(以VC 6.0编译器为例,其他编译器类似)首先,打开VC 6.0编译环境;在菜单栏——文件(的下拉菜单中选择“新建”),在弹出的选择窗口中,选择Win32 Console Application(控制台应用程序),在填写工程名称,选择一个程序保存路径,点击“完成”,查看工程信息。
在点击“确定”,就建立一个简单的工程了。
VC++ 6.0使用教程

VC++ 6.0 使用教程------李发军一、启动VC++6.01)点击桌面快捷方式,或者从所有程序中找到Microsoft Visual C++ 6.0启动。
2)进入后出现如下界面:直接将每日提示关闭即可。
二、单个文件的编辑、编译、运行1)点击左上角文件——新建2)弹出新建文件对话框,切换到文件栏,选择C++ Source File,输入文件名,也可自己选择文件存储的位置,如下:3)完成之后点确定,到编辑界面,编辑好我们需要的程序,如下:4)接下来请看屏幕右上方,,点(快捷键Ctrl+F7)编译,点(快捷键F7)连接,编译结果请看左下角,如下:如果出现该提示,说明程序没有问题,点(快捷键Ctrl+F5)即可运行程序,如果没有出现类似的提示,那你得好好想想了!!!好了,单个文件的是比较简单的,下面请看多个文件的!三、工程(多个)文件的编辑、编译、调试1)首先,还是点左上角文件——新建,出现新建文件对话框,如下:2)由于源文件有多个文件<.cpp>(也可能有头文件<.h>),所以我们选择新建工程,因此切换到工程栏目,选择win 32 Console Application,输入工程名,选择好存储的位置,如下:3)完成之后点确定,到如下界面,选择新建一个空工程:4)点击完成,然后确定,到了如下界面:5)现在点击左下角工程信息中的FileView选项,可以看到刚才新建的工程,再点击工程前面的+号,可以看到三个文件夹,分别对应于源文件,头文件和资源文件,如下:6)现在可以在工程里面添加需要的文件了,添加新建文件(.h文件和.cpp文件)的方法已经介绍过了,点击文件——新建,出现新建文件对话框,切换到文件栏目,选择C++ Source Code,输入文件名等等,如下:7)如果要添加已经存在的文件,那么就右键单击Source Files或者Header Files文件夹,选择添加文件到目录,出现添加文件对话框,现在就可以添加自己想要的文件到工程中了,如下:四、VC++ 6.0中的调试VC++6.0中的调试比较简单,主要是几个快捷键的应用。
VC++ 6.0常用控件使用方法介绍

VC++ 6.0常用控件使用方法介绍*除非特别说明,本文中所用控件变量类型为Control一般控件可用/不可用EnableWindow(TRUE);EnableWindow(FALSE);1、Static Text------------静态控件--类CStatic取值/赋值(变量类型为Control)m_lbl.GetWindowText(string);m_lbl.SetWindowText(string);2、Edit Box---------------编辑控件--类CEdit取值/赋值m_txt.GetWindowText(string);m_txt.SetWindowText(string);3、Check Box------------复选控件--类CButton(1)设置选中/未选中m_chk.SetCheck(BST_CHECKED);m_chk.SetCheck(BST_UNCHECKED);(2)判断是否选中int nCur = m_chk.GetCheck();nCur取值为BST_CHECKED/BST_UNCHECKED。
4、Radio Box------------单选控件--类CButton(1)默认选中第一项m_radio.SetCheck(BST_CHECKED);(2)选中组中任一项CWnd::CheckRadioButtonvoid CheckRadioButton(int nIDFirstButton, int nIDLastButton, int nIDCheckButton);(3)判断哪一项被选中CWnd::GetCheckedRadioButtonint GetCheckedRadioButton(int nIDFirstButton, int nIDLastButton);(4)控件变量类型为Value时,可通过给int型变量赋值0、1、2...选中第1、2、3...个选项。
VC++6.0使用说明

Microsoft Visual c++的入门解剖1.打开Micro soft Visual c++ 6.0可看到时2.点击“Close”,之后点击菜单栏的“File”中的“New”出现对话框先选中倒数第三个选项“Win32 Console Application”,然后在“Project name”中建立一个工程名(一般已自己名字命名)。
请留心,这是存放你的文件的路径。
3.点击OK后出现点击Finish->OK直到完成,这时已经建立了一个属于你的工程. 4.接下来再建立一个文件,再次点击菜单栏的New选项出现选中第五个选项“C++ Source File”,然后在File中输入文件名(命名规则见附录)。
5.最后就可以写程序了6.编完程序之后,点击工具栏的,将出现对话框,请一直点击“是”,将出现7.那么在点击中的红色感叹号,则出现8.若出现的是,可按F4键进行纠错请注意:1.不要同时开两个程序,这样会导致程序的运行出现错误。
2.若出现无法关闭Visual 6.0时,可在范围内单击右键出现资源管理器(或按Ctrl+Alt+Delete)结束.附录:1.程序命名:程序名字中不要出现中文命名规则:用自己名字拼音首字母+程序来源(或程序含义)例如:张三写的书本上的例4.4程序用ZS_exam4_4来命名例如:李四写的习题2.3的程序用LS_exer2_3来命名2.写好的程序保存起来将自己写过的程序保存起来,放到ftp上,方法如下:打开任意文件夹->输入"ftp://172.16.108.151/"->进入“09级”新建一个以自己名字命名的文件夹然后把自己写过的如ZS_exma4_4.cpp的程序复制进去。
3.文档的保存将学习总结,电子作业都存入ftp中.。
Visual C++ 6.0使用说明

Visual C++ 6.0使用说明在VC6.0下,必须先创建工程(Project),然后再添加源文件。
一个真正的软件,往往需要多个源文件和多种资源,例如图片、视频、控件等,通常是把它们放到一个文件夹下,进行有效的管理。
你可以把工程理解为这样的一个文件夹,IDE通过工程来管理这些文件。
工程有不同的类型,例如开发“黑窗口”的控制台程序,需要创建Win32 Console Application工程;开发带界面的GUI程序,需要创建Win32 Application工程。
1) 新建Win32 Console Application工程打开VC6.0,在菜单栏中选择“文件-> 新建”,或者Ctrl+N,弹出下面的对话框:切换到“工程”选项卡,选择“Win32 Console Application”,填写工程名称和路径,点击“确定”,会弹出一个对话框询问类型,这里选择“一个空工程”,如下图所示:点击“完成”按钮完成工程的创建。
2) 新建C源文件在菜单栏中选择“文件-> 新建”,或者Ctrl+N,弹出下面的对话框:切换到“文件”选项卡,选择“C++ Source File”,填写文件名,点击确定完成。
该步骤是向刚才创建的工程添加源文件。
3) 编写C语言代码在工作空间中可以看到刚才创建的工程和源文件,如下图所示:双击hello.c,进入编辑界面,输入上节中的代码。
4) 编译并运行代码在“组建”菜单中找到编译、组建和运行的功能,如下图所示:更加简单的方法是使用快捷方式,如下图所示:保存编写好的源代码,点击运行按钮或Ctrl+F5,如果程序正确,可以看到运行结果,如下图所示:注意:编译生成的.exe 文件在工程目录下的Debug文件夹内。
以上面的工程为例,路径为 E:\cDemo,打开看到有一个Debug文件夹,进入可以看到cDemo.exe。
在Debug目录中还会看到一个名为hello.obj 的文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VC6.0中控件及按钮的设置和使用VC学习笔记1:按钮的使能与禁止用ClassWizard的Member Variables为按钮定义变量,如:m_Button1;则m_Button1.EnableWindow(true); 使按钮处于允许状态m_Button1.EnableWindow(false); 使按钮被禁止,并变灰显示VC学习笔记2:控件的隐藏与显示用CWnd类的函数BOOL ShowWindow(int nCmdShow)可以隐藏或显示一个控件。
例1:CWnd *pWnd;pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT为控件ID号pWnd->ShowWindow( SW_HIDE ); //隐藏控件例2:CWnd *pWnd;pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT为控件ID号pWnd->ShowWindow( SW_SHOW ); //显示控件以上方法常用于动态生成控件,虽说用控件的Create函数可以动态生成控件,但这种控件很不好控制,所以用隐藏、显示方法不失为一种替代手段。
VC学习笔记3:改变控件的大小和位置用CWnd类的函数MoveWindow()或SetWindowPos()可以改变控件的大小和位置。
void MoveWindow(int x,int y,int nWidth,int nHeight);void MoveWindow(LPCRECT lpRect);第一种用法需给出控件新的坐标和宽度、高度;第二种用法给出存放位置的CRect对象;例:CWnd *pWnd;pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT1为控件ID号pWnd->MoveWindow( CRect(0,0,100,100) ); //在窗口左上角显示一个宽100、高100的编辑控件SetWindowPos()函数使用更灵活,多用于只修改控件位置而大小不变或只修改大小而位置不变的情况:BOOL SetWindowPos(const CWnd* pWndInsertAfter,int x,int y,int cx,int cy,UINT nFlags);第一个参数我不会用,一般设为NULL;x、y控件位置;cx、cy控件宽度和高度;nFlags常用取值:SWP_NOZORDER:忽略第一个参数;SWP_NOMOVE:忽略x、y,维持位置不变;SWP_NOSIZE:忽略cx、cy,维持大小不变;例:CWnd *pWnd;pWnd = GetDlgItem( IDC_BUTTON1 ); //获取控件指针,IDC_BUTTON1为控件ID号pWnd->SetWindowPos( NULL,50,80,0,0,SWP_NOZORDER | SWP_NOSIZE ); //把按钮移到窗口的(5 0,80)处pWnd = GetDlgItem( IDC_EDIT1 );pWnd->SetWindowPos( NULL,0,0,100,80,SWP_NOZORDER | SWP_NOMOVE ); //把编辑控件的大小设为(100,80),位置不变pWnd = GetDlgItem( IDC_EDIT1 );pWnd->SetWindowPos( NULL,0,0,100,80,SWP_NOZORDER ); //编辑控件的大小和位置都改变以上方法也适用于各种窗口。
VC学习笔记4:什么时候设定视中控件的初始尺寸?我在CFormView的视中加入了一个编辑控件,在运行时使它充满客户区,当窗口改变大小时它也跟着改变。
改变控件尺寸可以放在OnDraw()函数中,也可放在CalcWindowRect()函数中,当窗口尺寸发生变化时,它们都将被执行,且CalcWindowRect()函数先于OnDraw()函数,下例是在CalcWindowRect()函数中修改控件尺寸。
重载VIEW类的CalcWindowRect函数,把设定控件的尺寸的语句加入这个函数中。
例:void CMyEditView::CalcWindowRect(LPRECT lpClientRect, UINT nAdjustType){// TODO: Add your specialized code here and/or call the base classCFrameWnd *pFrameWnd=GetParentFrame(); //获取框架窗口指针CRect rect;pFrameWnd->GetClientRect(&rect); //获取客户区尺寸CWnd *pEditWnd=GetDlgItem(IDC_MYEDIT); //获取编辑控件指针,IDC_MYEDIT为控件ID号pEditWnd->SetWindowPos(NULL,0,0,rect.right,rect.bottom-50,SWP_NOMOVE | SWP_NOZORDER); //设定控件尺寸,bottom-50是为了让出状态条位置。
CFormView::CalcWindowRect(lpClientRect, nAdjustType);}VC学习笔记5:单选按钮控件(Ridio Button)的使用一、对单选按钮进行分组:每组的第一个单选按钮设置属性:Group,Tabstop,Auto;其余按钮设置属性Tabstop,Auto。
如:Ridio1、Ridio2、Ridio3为一组,Ridio4、Ridio5为一组设定Ridio1属性:Group,Tabstop,Auto设定Ridio2属性:Tabstop,Auto设定Ridio3属性:Tabstop,Auto设定Ridio4属性:Group,Tabstop,Auto设定Ridio5属性:Tabstop,Auto二、用ClassWizard为单选控件定义变量,每组只能定义一个。
如:m_Ridio1、m_Ridio4。
三、用ClassWizard生成各单选按钮的单击消息函数,并加入内容:void CWEditView::OnRadio1(){m_Ridio1 = 0; //第一个单选按钮被选中}void CWEditView::OnRadio2(){m_Ridio1 = 1; //第二个单选按钮被选中}void CWEditView::OnRadio3(){m_Ridio1 = 2; //第三个单选按钮被选中}void CWEditView::OnRadio4(){m_Ridio4 = 0; //第四个单选按钮被选中}void CWEditView::OnRadio5(){m_Ridio4 = 1; //第五个单选按钮被选中}四、设置默认按钮:在定义控件变量时,ClassWizard在构造函数中会把变量初值设为-1,只需把它改为其它值即可。
如://{{AFX_DATA_INIT(CWEditView)m_Ridio1 = 0; //初始时第一个单选按钮被选中m_Ridio4 = 0; //初始时第四个单选按钮被选中//}}AFX_DATA_INITVC学习笔记6:旋转控件(Spin)的使用当单击旋转控件上的按钮时,相应的编辑控件值会增大或减小。
其设置的一般步骤为:一、在对话框中放入一个Spin控件和一个编辑控件作为Spin控件的伙伴窗口,设置Spin控件属性:Auto buddy、Set buddy integer、Arrow keys设置文本控件属性:Number二、用ClassWizard为Spin控件定义变量m_Spin,为编辑控件定义变量m_Edit,定义时注意要把m_Edi t设置为int型。
三、在对话框的OnInitDialog()函数中加入语句:BOOL CMyDlg::OnInitDialog(){CDialog::OnInitDialog();m_Spin.SetBuddy( GetDlgItem( IDC_EDIT1 ) ); //设置编辑控件为Spin控件的伙伴窗口m_Spin.SetRange( 0, 10 ); //设置数据范围为0-10return TRUE;}四、用ClassWizard为编辑控件添加EN_CHANGE消息处理函数,再加入语句:void CMyDlg::OnChangeEdit1(){m_Edit = m_Spin.GetPos(); //获取Spin控件当前值}OK!VC学习笔记7:程序结束时保存文件问题在文档-视图结构中,用串行化自动保存文件在各种VC书上都有介绍。
现在的问题是我不使用串行化,而是自己动手保存,当点击窗口的关闭按钮时,如何提示并保存文档。
用ClassWizard在文档类(CxxDoc)中添加函数CanCloseFrame(),再在其中加入保存文件的语句就可以了。
注:要保存的数据应放在文档类(CxxDoc)或应用程序类(CxxApp)中,不要放在视图类中。
例://退出程序BOOL CEditDoc::CanCloseFrame(CFrameWnd* pFrame){CFile file;if(b_Flag) //b_Flag为文档修改标志,在修改文档时将其置为True{int t;t=::MessageBox(NULL,"文字已经改变,要存盘吗?","警告",MB_YESNOCANCEL | MB_ICONWARNING); //弹出提示对话框if(t==0 || t==IDCANCEL)return false;if(t==IDYES){CString sFilter="Text File(*.txt)|*.txt||";CFileDialog m_Dlg(FALSE,"txt",NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,(LPC TSTR)sFilter,NULL); //定制文件对话框int k=m_Dlg.DoModal(); //弹出文件对话框if(k==IDCANCEL || k==0)return false;m_PathName=m_Dlg.GetPathName(); //获取选择的文件路径名file.Open(m_PathName,CFile::modeCreate | CFile::modeWrite);file.Write(m_Text,m_TextLen); //数据写入文件file.Close();}}return CDocument::CanCloseFrame(pFrame);}VC学习笔记8:UpdateData()对于可以接收数据的控件,如编辑控件来说,UpdateData()函数至关重要。