基于c的windows应用程序设计课后答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第1章Windows窗体介绍习题解答1.假定你已经设计好窗体Form1,如何显示一个这样的窗体?a)Form1.Show();b)Form1.Load();c)Form1frm;frm=newForm1();frm.Show();d)Form1frm;frm=newForm1();frm.Load();答:C2.以下那种给窗体添加Load事件是正确的?a)添加以下方法privatevoidForm1_Load(objectsender,System.EventArgse){}b)添加以下方法privatevoidForm1_Load(objectsender,System.EventArgse){}并在InitializeComponent中添加以下语句this.Load+=newSystem.EventHandler(this.Form1_Load);c)添加以下方法privatevoidForm1_Load(objectsender,System.EventArgse)handlesthis.Load{}d)添加以下方法privatevoidForm1_Load(objectsender,System.EventArgse)handlesthis.Load{}并在InitializeComponent中添加以下语句this.Load+=newSystem.EventHandler(this.Form1_Load);答:B3.如何将控件停靠到窗体的右边?a)button1.Dock=DockStyle.Right;b)button1.Dock=Right;c)button1.Anchor=AnchorStyles.Right;d)button1.Anchor=Right;答:A4.在MDI主窗体中,如何新建一个MDI子窗体?a)Form1NewMdiChild=newForm1();NewMdiChild.MdiParent=this;b)Form1NewMdiChild=newForm1();this.MdiChild=NewMdiChild;c)Form1.MdiParent=this;d)this.MdiChild=Form1;答:A5.如何把活动的MDI子窗体的标题设为活动子窗体?a)this.MdiChild.Caption=活动子窗体;b)this.MdiChild.Text=活动子窗体;c)this.ActiveMdiChild.Caption=活动子窗体;d)this.ActiveMdiChild.Text=活动子窗体;答:D6.列出一些选择Windows窗体而不是Web窗体的原因。答:更丰富的用户界面更快的响应时间对脱机环境有更好的支持7.什么是可视化继承?答:从现有的窗体继承窗体的过程叫做可视化继承。这就是说如果已经为一个不同于现在项目的项目设计了一个窗体,而这个窗体与现在的项目所需要的窗体类似,就可以继承这个窗体。也可以创建一个基窗体作为模板供以后使用。这是复制特定窗体主要功能的一种有用方法,这样的话就不必重新创建窗体。8.将控件锚定到窗体与将控件停靠到窗体之间的区别是什么?答:当一个控件被锚定到某个窗体(或其它容器)时,如果该窗体的大小被调整,该控件维持它与定位点位置(初始位置)之间的距离不变。而在停靠时,控件就会被停靠到容器的两个边缘。当容器的大小变化时,控件就会在水平或垂直方向调整大小。9.SDI应用程序与MDI应用程序之间的区别是什么?答:在SDI应用程序中,某一时刻仅能打开一个文档。在打开一个文档之前必须先关闭另一个文档。而在MDI应用程序中,可以同时打开多个文档。每一个文档在其自己的窗口中显示。10.当创建窗体时,必须从什么类继承才能生成一个Windows窗体?答:System.Windows.Forms.Form11.当关闭窗体时,要执行一些数字的合计,应该向哪个事件处理程序添加代码?答:代码应该被添加到Deactivated事件处理程序中。12.当继承基窗体来创建新的窗体的时候,要重写在基窗体上的一个控件的方法,在基窗体中应该先做哪些准备工作?答:基窗体上控件的Modifier属性必须被设置为Protected或者Public,以便在派生的窗体中重写其功能。第2章使用窗体控件课堂练习:为控件创建事件处理程序5)传递给这个事件处理程序的第二个参数(e)的目的是什么?答:参数e包含事件数据。它是一个EventArgs对象(实际不包含事件数据的基类),或者是一个派生类(像MouseEventArgs)的实例。要查看派生类的完整列表,请在VisualStudio.NET帮助文档中使用短语“EventArgs类”进行查找,然后点击链接转到“派生类”。为Click事件创建一个事件处理程序。3)上面的双击动作为什么创建了一个Click事件处理程序?答:当在设计视图中双击一个控件时,IDE会自动为默认事件创建一个事件处理程序。课堂练习:创建和使用ToolBar控件8)为什么不能向ToolBar按钮添加图像呢?答:ToolBar控件将ImageList控件作为图像源。使用ToolBar控件的ImageList属性指定Toolbar将从哪个ImageList控件获取图像。13)运行应用程序。单击工具栏按钮时有事情发生吗?必须处理什么事件以响应单击ToolBar按钮?答:ToolBar的ButtonClick事件用来处理ToolBar按钮的单击。ToolBarButtonClickEventArgs用来确定单击了哪个按钮。课堂练习:在运行时添加和移除控件添加新控件6)为什么decimalCheckBox出现在GroupBox1控件的左上角?答:控件位置属性的默认坐标X和Y的值均为零。课堂练习:在运行时更新菜单使用另一个MainMenu9)什么时候能在一个应用程序中使用多个MainMenu控件?答:在应用程序的上下文改变或者应用程序有多种状态时,使用(显示)多个MainMenu对象会很有帮助。将一个ContextMenu分配给一个控件。5)如何找出哪个控件与ContextMenu有关联?答:ContextMenu.SourceControl属性获取显示快捷方式菜单的控件。找出与ContextMenu关联的控件6)在运行时用MenuItem对象的什么方法添加菜单项?答:Add方法。在运行时添加菜单项。6)在“File”菜单中有向用户显示以前打开的文件的方法吗?答:可以使用菜单项的Checked属性来指出什么时候选中菜单项。通过每次单击该属性在属性值on和off之间切换,并且在应用程序中添加适当的代码,这样就可以使菜单项执行起来像一个单选按钮。习题解答1.在窗体Form1中有按钮Button1,以下那个Click事件处理程序可以关闭该窗体?a)Form1.Close();b)this.Close();c)Button1.Close();d)me.Close();答:B2.在状态栏statusBar1上创建一个带面板并显示Panel1,可以用程序:a)panel1.Text=Panel1;statusBar1.AddPanel(panel1);b)StatusBarPanelpanel1=newStatusBarPanel();panel1.Text=Panel1;statusBar1.AddPanel(panel1);c)panel1.Text=Panel1;statusBar1.Panels.Add(panel1);d)StatusBarPanelpanel1=newStatusBarPanel();panel1.Text=Panel1;statusBar1.Panels.Add(panel1);答:D3.在窗体中,如何在运行时添加一个按钮?a)ButtonButton1;Button1=newButton();Button1.Text=Newbutton;this.Controls.Add(Button1);b)ButtonButton1;Button1=newButton(Newbutton);this.Controls.Add(Button1);c)ButtonButton1;Button1=newButton();Button1.Text=Newbutton;this.AddButton(Button1);d)ButtonButton1;Button1=newButton(Newbutton);this.AddButton(Button1);答:A4.以下那段代码可以给button1创建一个上下文菜单a)Menum=newMenu();m.MenuItems.Add(menu1);this.button1.ContextMenu=m;b)ContextMenum=newContextMenu();m.MenuItems.Add(newContextMenu(menu1));this.button1.ContextMenu=m;c)ContextMenum=newContextMenu();m.MenuItems.Add(menu1);this.button1.ContextMenu=m;d)Menum=newMenu();m.MenuItems.Add(newContextMenu(menu1));this.button1.ContextMenu=m;答:C5.窗体有TextBox控件textBox1及ErrorProvider控件errorProvider1。以下那段代码可以在textBox1中不是整数时显示一个错误消息?a)try{intx=Int32.Parse(textBox1.Text);errorProvider1.SetError(textBox1,);}catch{errorProvider1.SetError(textBox1,需要整数);}b)try{intx=Int32.Parse(textBox1.Text);errorProvider1.ClearError();}catch{errorProvider1.SetError(textBox1,需要整数);}c)try{intx=Int32.Parse(textBox1.Text);errorProvider1.SetError(textBox1,);}catch{errorProvider1.GetError(textBox1,需要整数);}d)try{intx=Int32.Parse(textBox1.Text);errorProvider1.ClearError();}catch{errorProvider1.GetError(textBox1,需要整数);}答:A6.在.NETFramework中事件是如何被引发的以及如何被处理的?答:事件是由事件发送者(eventsender)响应用户的操作或应用程序生成的事件而引发的。委托(delegate)用来连接事件发送者(eventsender)和处理事件的事件接收者(eventreceiver)。7.在预定旅馆房间应用程序的用户界面中,想要让用户选择付款方式(信用卡、现金或者支票)。请问可以使用什么控件在该应用程序中创建这个功能?答:有多种方法可以给用户提供若干选项并只允许用户做出单一选择。因为在本例中只有三个选项,最简单的一种解决方法是在窗体上提供三个RadioButton控件。对于涉及大量选项的情况,列表控件将是较好的选择(例如ListBox控件)。8.如何为工具栏按钮显示工具提示(tooltips)?答:通过打开ToolBarButton集合编辑器,并为ToolBarButton的ToolTipText属性指定一个值,就可以为ToolBar控件上的按钮创建工具提示(tooltips)。9.当用户关闭一个对话框时,如何确定用户的操作?答:父窗体的DialogResult属性用于捕获关闭对话框的操作。例如,DialogResult可以用于确定Ope

1 / 52
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功