Visual C面向对象与可视化程序设计;旋转的风车课程设计报告.doc
文本预览下载声明
Visual C++面向对象
与可视化程序设计
课程设计
题目名称:旋转的风车
班级:计算机08-5
姓名:Adam Roy
学号:0804_______
利用VC++设计旋转的风车
一 要求与分析
在窗口中画一个旋转的风车,风车中有三个叶片,颜色分别为红、黄和蓝,叶片外侧有一个外接圆。要求在程序中能够控制叶片的运转与停止,当开始运转时,速度由0逐渐变到最高速度;当停止时,由最高速度逐渐变为0。本课题对软硬件平台要求不高,操作系统可选择Windows2000/Window XP。在Visual C++ 6.0下控件来实现。
二 MFC介绍
MFC (Microsoft Foundation Class ) 是用来编写Windows 应用程序的C ++ 类集,其中封装了大部分Windows API 函数和Windows 控件,使用MFC 类库和Visual C ++ 提供的应用程序开发工具,可使应用程序开发变得简单,提高代码的可靠性和可重用性
三 界面设计
界面应满足以下要求:
界面首先要出现一个风车。
风车叶片要分红黄蓝三种颜色,外侧有一个外接圆。
3.在程序中能够控制叶片的运转与停止,当开始运转时,速度由0逐渐变到最高速度;当停止时,由最高速度逐渐变为0。
4.根据以上描述,程序运行时效果如图所示。
运行结果:
?四 系统实现
源程序:
// Instance_3_1_.cpp : Defines the entry point for the application.
//
/*************************************************************************
在窗口中画一个旋转的风车,风车中有三个叶片,颜色分别为红黄和蓝,
叶片外侧有一个外接圆。
*************************************************************************/
#include windows.h
#include math.h
// 回调函数声明
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
// 初始化窗口类声明
BOOL InitWindowsClass(HINSTANCE hInstance, char *lpszClassName);
// 初始化窗口声明
BOOL InitWindows(HINSTANCE hInstance, int nCmdShow, char *lpszClassName, char *lpTitle);
WNDCLASS wndclass; // 定义一个窗口类
HWND hwnd; // 定义一个窗口句柄
const double Pi = 3.1415926;
int nMaxNumber = 20; // 叶片循环一周中绘图的次数
int nNum = 0; // 记录当前的顺序
double time0=81;
bool flag=0;
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
MSG Msg; // 定义消息
char lpszClassName[] = 风车; // 窗口的类名
char lpTitle[] = 基本绘图-旋转的风车; // 窗口标题名
// 初始化窗口类
if (!InitWindowsClass(hInstance, lpszClassName))
{
return FALSE;
}
// 初始化窗口
if (!InitWindows(hInstance, nCmdShow, lpszClassName, lpTitle))
{
return FALSE;
}
//消息循环
while(GetMessage(Msg, NULL, 0, 0))
{
TranslateMessage(Msg);
DispatchMessage(Msg);
}
return Msg.wParam; // 程序终止时将信息返回系统
}
// 初始化窗口类定义
BOOL InitWindowsClass(HINST
显示全部