1 / 30

面向对象程序设计 C#.Net

面向对象程序设计 C#.Net. 09 Windows 程序设计 I. 郑捷 lzj@fjnu.edu.cn 13509354412 http://www.lzj.name. 异常处理. 程序调试技术 异常概念 异常的发生 异常的默认处理形式 编程捕捉异常 异常与函数调用 抛出异常. 程序调试技术简介. 断点 Break Point 单步执行 Step 变量观察 Variable Watch 表达式求值 Expression Evaluation. 程序可能出现的问题. 语法错误(编译错误)和警告

olwen
Download Presentation

面向对象程序设计 C#.Net

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 面向对象程序设计C#.Net 09 Windows程序设计 I 郑捷 lzj@fjnu.edu.cn 13509354412 http://www.lzj.name

  2. 异常处理 • 程序调试技术 • 异常概念 • 异常的发生 • 异常的默认处理形式 • 编程捕捉异常 • 异常与函数调用 • 抛出异常 2009-2010-2

  3. 程序调试技术简介 • 断点 Break Point • 单步执行 Step • 变量观察 Variable Watch • 表达式求值 Expression Evaluation 2009-2010-2

  4. 程序可能出现的问题 • 语法错误(编译错误)和警告 • 由于语法引起的错误,或者由于名称不匹配等引起的错误。在录入、编译的时候就会给予提示 • 出现这种错误时,源代码无法变成可执行文件 • 运行时错误(异常) • 在运行的时候发生的意料之外的情况 • 逻辑错误 • 程序正常运行,但是结论与预期不符合 2009-2010-2

  5. 异常 • 异常是程序在运行遇到的任何错误情形或者意外行为 • 这些意外是可预期的,但是无法由编程人员控制是否发生 2009-2010-2

  6. C#的异常处理 • C#采用了大部分面向对象编程语言所采用的try-catch结构来进行异常处理 • 称为结构化异常处理 • 是一种事后捕捉的处理方式 • 即:在try区域中,允许异常发生,在发生后,根据具体情况进行事后补救工作 2009-2010-2

  7. try-catch-finally执行过程 try块 可能发生异常的语句 调用该段代码的地方 正常执行,未发生异常 发生异常,且被捕获处理 发生异常,但是无法被捕获处理 catch块 finally块 2009-2010-2

  8. 异常类 • 在catch中,我们可以通过异常类和变量来捕捉不同异常 • 系统定义了一系列的异常类型,用于处理不同的异常情况 2009-2010-2

  9. 异常的抛出 throw • 我们可以用throw语句产生异常 • throw语句用于向系统抛出一个异常,抛出后由异常处理机制进行处理 • 事实上,之前所谓的系统异常,都是由被我们调用的函数内部主动抛出的 2009-2010-2

  10. 结构化在异常处理中的作用 • 在结构化程序设计中,每个模块对其外围代码而言,是一个整体,一个有输入,有输出,完成特定任务的黑盒 • 这里模块指一个函数,或者只是一段代码 • 外围指调用这个函数的代码,或者这个模块前后的代码等 • 输入、输出对于函数而言主要是参数,以及全局变量,而对于代码段而言,主要是变量 • 有了结构化,程序就清晰了 2009-2010-2

  11. Windows程序设计 • Windows程序设计概念 • 控件布局及其属性 • 代码读写属性 • 消息框的使用 • 更多的控件 2009-2010-2

  12. Windows程序设计 • Windows程序设计,即设计在Windows环境下运行的程序 • 它的基础是一个窗体,在窗体的范围内可以布局各种控件,并且编写相应的代码 • 演示:新建Windows窗体程序 2009-2010-2

  13. 注意事项 • 注意区分设计状态和运行状态的窗体 • 一般设计时叫窗体 Form,运行时叫窗口 Window • 注意程序的结构: • 一个解决方案 Solution • 一个项目 Project • 一个主程序文件 Program.cs • 一组窗体程序文件 Form1 2009-2010-2

  14. 布局控件 • 可以从工具箱(Toolbox)中拖拉控件到窗体设计界面上。或者在工具箱中点击控件,再在窗体上拖动添加控件 • 通过拖动,进行控件位置、大小的直观定位 • 借住工具栏按钮,可以进行控件的对齐 2009-2010-2

  15. 控件属性 • 属性(Property)是控件的相关信息 • 可以通过属性窗格对控件进行调整 • 注意:窗体也是控件,是容器性控件,也有自己的属性!! 2009-2010-2

  16. 控件属性 • 名称 • 定位、外观类属性 • 用户输入类属性 • 行为类属性 2009-2010-2

  17. 常用控件 • 标签 Label(lbl) • 文本框 TextBox (txt) • 按钮 Button (btn) • 复选框 CheckBox (chk) • 单选按钮 RadioButton (rad) • 组合框 ComboBox (cmb) • 列表框 ListBox (lst) 2009-2010-2

  18. 控件命名 • 控件就是窗体上面的变量,所以也要命名! • 当添加控件的时候,系统自动会用序号为控件命名,如button1、textBox1等等 • 建议为界面上面的每个控件命名,命名一般标准为:类型前缀+控件功能 • 如 btnClose关闭按钮 • 前缀一般为控件类型的缩写,常见的见前文 • 也有一些人习惯用后缀命名方式,将类型放后面 2009-2010-2

  19. 代码书写 • 在窗体上添加一个按钮,命名为btnHello • 在按钮上双击,进入代码页面 • public partial class frmFirstForm : Form • { • public frmFirstForm() • { • InitializeComponent(); • } • private void btnHello_Click(object sender, EventArgs e) • { • //在这里写你的代码 • } • } 2009-2010-2

  20. 代码解析 发生事件的控件 发生了什么事件 函数的参数(不要乱改) • private void btnHello_Click(object sender, EventArgs e) • { • //你的代码所在位置 • } • 这个就是所谓的事件函数,在按钮btnHello被点击(Click)之后,我们所执行的操作就在这里编写。这种方式叫“事件驱动” • 关于事件,详细的下一次介绍 我们的代码,在这个事件发生之后所执行的 2009-2010-2

  21. 代码书写 • 在事件中写入代码: • MessageBox.Show("Hello, world!"); • MessageBox是消息框对象,用于显示提示信息等 • Show是它的方法,用来显示信息 • 参数为一个字符串,是要显示的内容 2009-2010-2

  22. 读取控件的属性 • 我们可以在事件代码中读取控件的属性 • 尤其是输入型的控件 • 往界面上面再添加一个文本框 txtUserName • 将原来的事件代码改为: • MessageBox.Show("欢迎", txtUserName.Text); • 这里txtUserName是文本框的名字,而它的Text属性则是用户在文本框中输入的文字 2009-2010-2

  23. 代码读写控件属性 • 在代码中,可以直接用“控件名.属性名”的方式对控件的属性进行读取和设置 • 一般涉及的是用户在控件中的输入 2009-2010-2

  24. 控件的常用属性 • 文本框 TextBox • string Text 用户输入的文字 • 复选框 CheckBox • bool Checked 是否选中该项目 • 单选钮 RadioButton • bool Checked 是否在一系列项目中选中此项 • 标签 Label • string Text 显示给用户看的文字 2009-2010-2

  25. 列表框 ListBox • 列表框用来列出一组文字,用户可以在这些项目中选择一个或者多个 • 管理列表框内容 • 读取用户选择的内容 2009-2010-2

  26. 组合框 ComboBox • 组合框可以看做列表框和文本框的组合 • 有三种不同模式 • 如何管理组合框内容 • 读取组合框的选择 2009-2010-2

  27. Windows程序设计的一般步骤 • 先构思窗体布局,各个位置,使用什么控件,获取什么类型的信息 • 在窗体上实现静态的构思 • 编写代码,写事件响应流程 2009-2010-2

  28. Windows程序设计 • Windows程序设计概念 • 控件布局及其属性 • 代码读写属性 • 消息框的使用 • 更多的控件 2009-2010-2

  29. 预习 • 控件的事件 • 委托 2009-2010-2

  30. 实验 • 根据要求设计Windows窗体,摆放控件并编程实现点击按钮后显示信息 2009-2010-2

More Related