在Windows窗口里画五角星

#include<windows.h>
#include<math.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
double PI = 3.1415926;//定义圆周率
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow)
{static TCHAR szAppName[] = TEXT("MyWindows");HWND hwnd;MSG msg;WNDCLASS wndclass;wndclass.style = CS_HREDRAW | CS_VREDRAW;wndclass.lpfnWndProc = WndProc;wndclass.cbClsExtra = 0;wndclass.cbWndExtra = 0;wndclass.hInstance = hInstance;wndclass.hIcon = LoadIcon(NULL,IDI_APPLICATION);wndclass.hCursor= LoadCursor(NULL,IDC_ARROW);wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);wndclass.lpszMenuName = NULL;wndclass.lpszClassName = szAppName;if(!RegisterClass(&wndclass)){MessageBox(NULL,TEXT("这个程序需要在Windows NT才能运行!"),szAppName,MB_ICONERROR);return 0;}hwnd = CreateWindow(szAppName,TEXT("Crush画的五角星"),WS_OVERLAPPEDWINDOW | WS_HSCROLL | WS_VSCROLL,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);ShowWindow(hwnd,iCmdShow);UpdateWindow(hwnd);while(GetMessage(&msg,NULL,0,0)){TranslateMessage(&msg);DispatchMessage(&msg);}return msg.wParam;
}LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{HDC hdc;PAINTSTRUCT ps;RECT rect;double linelength=200;double next_x=200,next_y=200;switch(message){case WM_PAINT:hdc = BeginPaint(hwnd,&ps);GetClientRect(hwnd,&rect);MoveToEx(hdc,next_x,next_y,NULL);/*下一个点:x:是该点的x减去边长乘cos72度*//*下一个点:y:是该点的y加上边长乘sin72度*/next_x=next_x-linelength*cos(2*PI/5);next_y=next_y+linelength*sin(2*PI/5);LineTo(hdc,next_x,next_y);//连线/*计算下一个点的坐标*/next_x=next_x+linelength*cos(PI/5);next_y=next_y-linelength*sin(PI/5);LineTo(hdc,next_x,next_y);//连线/*计算下一个点的坐标*/next_x-=linelength;LineTo(hdc,next_x,next_y);//连线/*计算下一个点的坐标*/next_x=next_x+linelength*cos(PI/5);next_y=next_y+linelength*sin(PI/5);LineTo(hdc,next_x,next_y);//连线LineTo(hdc,200,200);//连到起点EndPaint(hwnd,&ps);return 0;case WM_DESTROY:PostQuitMessage(0);return 0;}return DefWindowProc(hwnd,message,wParam,lParam);
}

在Windows窗口里画五角星相关推荐

  1. matlabapp窗口图像_Matlab在一个图形窗口里画多个图形的操作教程

    小伙伴们你们知道在Matlab在一个图形窗口里画多个图形呢?今天小编很乐意与大家分享在Matlab在一个图形窗口里画多个图形的技巧,感兴趣的可以来了解了解哦. Matlab在一个图形窗口里画多个图形的 ...

  2. 在matlab中画多个图,Matlab在一个图形窗口里画多个图形的详细教程

    原创Matlab在一个图形窗口里画多个图形的详细教程 编辑:佚名 来源:PC下载网时间:2019-11-18 13:35:08 对于Matlab软件各位应该还有不懂的地方,比如说想在一个图形窗口里画多 ...

  3. matlab plot多个窗口,Matlab在一个图形窗口里画多个图形的详细教程

    Matlab在一个图形窗口里画多个图形的详细教程 作者:佚名 来源:PC下载网时间:2019-11-18 13:35:08 对于Matlab软件各位应该还有不懂的地方,比如说想在一个图形窗口里画多个图 ...

  4. windows编程之画五角星

    这边我们介绍一下利用windows编程如何来画五角星,下面主要介绍了3种与五角星相关图形的画法: 1.正常的五角星 代码如下: #include<windows.h> #include&l ...

  5. Windows窗口分析

    (本文尝试通过一些简单的实验,来分析Windows的窗口机制,并对微软的设计理由进行一定的猜测,需要读者具备C++.Windows编程及MFC经验,还得有一定动手能力.文中可能出现一些术语不统一的现象 ...

  6. Windows窗口刷新机制详解

    1.Windows的窗口刷新管理 窗口句柄(HWND)都是由操作系统内核管理的,系统内部有一个z-order序列,记录着当前窗口从屏幕底部(假象的从屏幕到眼睛的方向),到屏幕最高层的一个窗口句柄的排序 ...

  7. python画五角星代码_Python使用Turtle模块绘制五星红旗代码示例

    在Udacity上课时学到了python的turtle方法,这是一个很经典的用来教小孩儿编程的图形模块,最早起源于logo语言.python本身内置了这个模块,其可视化的方法可以帮助小孩儿对编程的一些 ...

  8. Windows窗口消息大全,全不全自己看

    1 Windows窗口消息大全,全不全自己看 2 3 // 4 #include "AFXPRIV.H"//消息值的定义来源 5 #include "Dde.h" ...

  9. windows窗口分析,父窗口,子窗口,所有者窗口

    (本文尝试通过一些简单的实验,来分析Windows的窗口机制,并对微软的设计理由进行一定的猜测,需要读者具备C++.Windows编程及MFC经验,还得有一定动手能力.文中可能出现一些术语不统一的现象 ...

最新文章

  1. 阿里云 redis 公网连接
  2. 复利计算5.0——结对(总结)
  3. 【随笔】通用近似定理
  4. js生日计算年龄_生男生女计算公式超准
  5. metasploit framework
  6. Oracle八大性能视图之v$sort_usage_temp
  7. [iBoard 电子学堂][第〇卷 电子基础]第二篇 电路图与印刷电路板
  8. 计算机网络十进制转二进制的应用题,【网络-理论】二进制与十进制的转换
  9. ubuntun 16.04环境安装Caffe过程
  10. java11和13_Java1113
  11. 小程序分享如何自定义封面?
  12. C语言之32个关键字
  13. 【Qt】使用QProcess调用其它程序或脚本
  14. zoj3551 Bloodsucker//概率dp
  15. 详解WSAEventSelect网络模型
  16. [iOS]Size Class不同尺寸适配的是什么样的机型(实验向)
  17. 帆软注册文件_报表组件FineReport加密狗注册机理及使用方法
  18. 利用GPS北斗卫星信号开发设计NTP网络时间服务器
  19. Matlab人工智能算法
  20. 你还在为“收钱”发愁吗?BeeCloud打造支付平台

热门文章

  1. 暗黑3新职业 巫师详细介绍全面曝光
  2. android 自定义皮肤,仿墨迹天气在Android App中实现自定义zip皮肤更换
  3. 微软重发KB2952664与KB2976978两个系统升级诊断补丁
  4. [9i]小程序开发中,input组件的常用事件
  5. iOS 字符串截取,将字符串中用括号包含的内容去除
  6. 华为AnyOffice eSDK 手机端内外网通信的正确姿势
  7. 古今中外读书格言集锦
  8. html css字体样式颜色,css字体颜色如何设置?
  9. 【QT开发笔记-基础篇】| 第一章 QT入门 | 1.1 为什么要学习Qt
  10. 关于web项目,dao层注入报错