对话式应用程序设计对话式应用程序设计主要内容
对话式应用程序的特点
对话框应用程序设计
基于表单的应用程序设计什么是对话式应用程序设计?
对话式应用程序是以 控件 (如编辑框、
按钮等)作为和用户交互的手段,主要用于收集、显示离散信息,应用范围包括数据输入程序、文件查找程序、计算器和磁盘工具等。
该类应用程序分为两种,对话框应用程序、基于表单的应用程序 。
对话框应用程序
利用 AppWizard生成的对话框应用程序框架只有两个类:
--CDialogDemoApp //应用程序类
--CDialogDemoDlg //对话框类
特点:
没有工具栏、状态栏、菜单,采用控件作为和用户的交互手段,因此不能处理文档,但是代码少、
速度快。
程序设计基本思路:
根据用户对控件的操作,利用 ClassWizard完成消息映射,编写相应的消息处理函数。
示例程序 — 调色板分析:
1、分析程序要实现的功能
--通过滚动红绿蓝三色的滚动条进行调色。
2、功能分解:
--使滚动条滚动、根据滚动位置进行调色
3、根据分解得到的功能确定程序设计步骤:
--完成滚动条滚动的消息映射
--编写滚动消息处理函数使滚动条滚动
--编写画图消息处理函数,根据滚动位置进行调色
4、确定消息处理函数的主要功能步骤
--找出类中需要哪些数据成员和成员函数
--进行代码编程
OnVScroll (UINT nSBCode,UINT nPos,CScrollBar* pScrollBar);
-- nSBCode代表用户的操作
-- nPos代表用户拖动滑块的位置
-- nPos代表产生滚动消息的滚动条
SetScrollPos(int nPos);
SetScrollRange(int nMinPos,int nMaxPos);
基于表单的应用程序设计
表单:
实际上也是窗口,但不用于数据的输出,而是作为容器容纳控件。
表单作为主框架窗口的子窗口,放在主框架窗口的客户区。
基于表单的应用程序也使用 文档 /视图结构 。
基于表单的应用程序
利用 AppWizard生成的对话框应用程序框架也有 4个类:
--CFormDemoApp //应用程序类
--CFormDemoDoc //视图类,继承自 CFormView
特点:
可以有工具栏、状态栏、菜单,也不能处理文档,
采用控件作为和用户的交互手段,主要处理控件消息和菜单消息。
程序设计基本思路:
控件消息一般由表单对象处理,菜单消息可以给任何一个适合的类进行处理。
--CFormDemoView //文档类
--CMainFrame //主框架窗框类示例程序 — 进制转换分析:
1、分析程序要实现的功能
--完成十进制和二进制、十六进制的转换 。
2、功能分解:
--选择目的进制
--点击按钮 输入待转换的数
--点击,=,按钮进行 转换
3、根据分解得到的功能确定程序设计步骤:
--设置响应进制转换的菜单消息
--设置响应数字按钮消息的处理函数
--设置响应特殊按钮消息的处理函数
--设置响应,=,按钮消息的处理函数
4、确定消息处理函数的主要功能步骤
--找出类中需要哪些数据成员和成员函数
--进行代码编程
对话式应用程序的特点
对话框应用程序设计
基于表单的应用程序设计什么是对话式应用程序设计?
对话式应用程序是以 控件 (如编辑框、
按钮等)作为和用户交互的手段,主要用于收集、显示离散信息,应用范围包括数据输入程序、文件查找程序、计算器和磁盘工具等。
该类应用程序分为两种,对话框应用程序、基于表单的应用程序 。
对话框应用程序
利用 AppWizard生成的对话框应用程序框架只有两个类:
--CDialogDemoApp //应用程序类
--CDialogDemoDlg //对话框类
特点:
没有工具栏、状态栏、菜单,采用控件作为和用户的交互手段,因此不能处理文档,但是代码少、
速度快。
程序设计基本思路:
根据用户对控件的操作,利用 ClassWizard完成消息映射,编写相应的消息处理函数。
示例程序 — 调色板分析:
1、分析程序要实现的功能
--通过滚动红绿蓝三色的滚动条进行调色。
2、功能分解:
--使滚动条滚动、根据滚动位置进行调色
3、根据分解得到的功能确定程序设计步骤:
--完成滚动条滚动的消息映射
--编写滚动消息处理函数使滚动条滚动
--编写画图消息处理函数,根据滚动位置进行调色
4、确定消息处理函数的主要功能步骤
--找出类中需要哪些数据成员和成员函数
--进行代码编程
OnVScroll (UINT nSBCode,UINT nPos,CScrollBar* pScrollBar);
-- nSBCode代表用户的操作
-- nPos代表用户拖动滑块的位置
-- nPos代表产生滚动消息的滚动条
SetScrollPos(int nPos);
SetScrollRange(int nMinPos,int nMaxPos);
基于表单的应用程序设计
表单:
实际上也是窗口,但不用于数据的输出,而是作为容器容纳控件。
表单作为主框架窗口的子窗口,放在主框架窗口的客户区。
基于表单的应用程序也使用 文档 /视图结构 。
基于表单的应用程序
利用 AppWizard生成的对话框应用程序框架也有 4个类:
--CFormDemoApp //应用程序类
--CFormDemoDoc //视图类,继承自 CFormView
特点:
可以有工具栏、状态栏、菜单,也不能处理文档,
采用控件作为和用户的交互手段,主要处理控件消息和菜单消息。
程序设计基本思路:
控件消息一般由表单对象处理,菜单消息可以给任何一个适合的类进行处理。
--CFormDemoView //文档类
--CMainFrame //主框架窗框类示例程序 — 进制转换分析:
1、分析程序要实现的功能
--完成十进制和二进制、十六进制的转换 。
2、功能分解:
--选择目的进制
--点击按钮 输入待转换的数
--点击,=,按钮进行 转换
3、根据分解得到的功能确定程序设计步骤:
--设置响应进制转换的菜单消息
--设置响应数字按钮消息的处理函数
--设置响应特殊按钮消息的处理函数
--设置响应,=,按钮消息的处理函数
4、确定消息处理函数的主要功能步骤
--找出类中需要哪些数据成员和成员函数
--进行代码编程