1. void CSTest1View::OnDraw(CDC* pDC)
    2. {
    3. CSTest1Doc* pDoc = GetDocument();
    4. ASSERT_VALID(pDoc);
    5. // TODO: add draw code for native data here
    6. CRect rcClient;
    7. GetClientRect(&rcClient);
    8. rcClient.DeflateRect(5,5,5,5);
    9. if(m_nMode==0)
    10. {
    11. TRIVERTEX        vert[2] ;
    12. GRADIENT_RECT    gRect;
    13. vert [0] .x      = rcClient.left;
    14. vert [0] .y      = rcClient.top;
    15. vert [0] .Red    = 0x8000;
    16. vert [0] .Green  = 0xc000;
    17. vert [0] .Blue   = 0xff00;
    18. vert [0] .Alpha  = 0x0000;
    19. vert [1] .x      = rcClient.right;
    20. vert [1] .y      = rcClient.bottom;
    21. vert [1] .Red    = 0xff00;
    22. vert [1] .Green  = 0xc000;
    23. vert [1] .Blue   = 0x8000;
    24. vert [1] .Alpha  = 0x0000;
    25. gRect.UpperLeft  = 1;
    26. gRect.LowerRight = 0;
    27. GradientFill(pDC->GetSafeHdc(),vert,2,&gRect,1,GRADIENT_FILL_RECT_V);
    28. }
    29. if(m_nMode==1)
    30. {
    31. TRIVERTEX        vert [4] ;
    32. GRADIENT_TRIANGLE    gTri[2];
    33. vert [0] .x       =  rcClient.left;
    34. vert [0] .y       =  rcClient.top;
    35. vert [0] .Red     =  0xff00;
    36. vert [0] .Green   =  0xc000;
    37. vert [0] .Blue    =  0x8000;
    38. vert [0] .Alpha   =  0x0000;
    39. vert [1] .x       =  rcClient.Width();
    40. vert [1] .y       =  rcClient.top;
    41. vert [1] .Red     =  0x8000;
    42. vert [1] .Green   =  0xff00;
    43. vert [1] .Blue    =  0x8000;
    44. vert [1] .Alpha   =  0x0000;
    45. vert [2] .x       =  rcClient.CenterPoint().x;
    46. vert [2] .y       =  rcClient.bottom;
    47. vert [2] .Red     =  0x8000;
    48. vert [2] .Green   =  0xc000;
    49. vert [2] .Blue    =  0xff00;
    50. vert [2] .Alpha   =  0x0000;
    51. vert [3] .x       =  rcClient.CenterPoint().x;
    52. vert [3] .y       =  rcClient.CenterPoint().y;
    53. vert [3] .Red     =  0xff00;
    54. vert [3] .Green   =  0x0000;
    55. vert [3] .Blue    =  0x0000;
    56. vert [3] .Alpha   =  0x0000;
    57. gTri[0].Vertex1   = 0;
    58. gTri[0].Vertex2   = 1;
    59. gTri[0].Vertex3   = 2;
    60. gTri[1].Vertex1   = 0;
    61. gTri[1].Vertex2   = 0;
    62. gTri[1].Vertex3   = 0;
    63. GradientFill(pDC->GetSafeHdc(),vert,4,&gTri,1,GRADIENT_FILL_TRIANGLE);
    64. }
    65. }

VC 实现视图区背景颜色渐变填充的更多相关文章

  1. css3的背景颜色渐变@线性渐变

    背景颜色渐变之线性渐变 语法形式: firefox浏览器 background:-moz-linear-gradient(position/deg,startColor,endColor); oper ...

  2. Android特效专辑(二)——ViewPager渲染背景颜色渐变(引导页)

    Android特效专辑(二)--ViewPager渲染背景颜色渐变(引导页) 首页:http://blog.csdn.net/qq_26787115/article/details/50439020 ...

  3. css3背景颜色渐变属性 兼容性测试基础环境为:windows系统;IE6.0+, Firefox4.0+, Chrome4.0+, Safari4.0+, Opera15.0+

    css3背景颜色渐变属性 兼容性测试基础环境为:windows系统:IE6.0+, Firefox4.0+, Chrome4.0+, Safari4.0+, Opera15.0+ 语法: <li ...

  4. WPF 背景颜色渐变的滑动条实现

    原文:WPF 背景颜色渐变的滑动条实现 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/BYH371256/article/details/83507 ...

  5. css3实现背景颜色渐变,文字颜色渐变,边框颜色渐变

    css3的渐变可以使用2个或者多个指定的颜色之间显示平稳的过渡的效果.这篇文章主要介绍下css3实现背景颜色渐变,文字颜色渐变,边框颜色渐变的方法,以便大家学习参考! 1.css背景颜色渐变 代码: ...

  6. css3背景颜色渐变属性

    https://www.cnblogs.com/ningkyolei/p/4623697.html 很久之前写的一篇文章了,今天重新整理一下关于css3背景渐变的写法,至于是怎么来的,可以看下面渐变的 ...

  7. CSS3实现背景颜色渐变 摘抄

    一. Webkit浏览器 (1) 第一种写法: background:-webkit-gradient(linear ,10% 10%,100% 100%, color-stop(0.14,rgb(2 ...

  8. CSS3实现背景颜色渐变

    CSS3渐变色生成网站:http://gradients.glrzad.com/ 本文参考:前端设计之用CSS3做线性渐变效果http://webskys.com/css3/10.html 在CSS3 ...

  9. HTML中将背景颜色渐变

    通过使用 css3 渐变可以让背景两个或多个指定的颜色之间显示平稳的过渡,由于用到css3所以需要考虑下浏览器兼容问题,例如:从左到右的线性渐变,且带有透明度的样式:#grad {background ...

随机推荐

  1. in window js 未定义和undifined的区别

    浏览器报错:未定义和undifined不是同一概念,前者是没有申明,后者是没有赋值. 1: <html>     <body>         <script>   ...

  2. ExecuteReader: CommandText 属性尚未初始化

    没有对sqlcommand对象的commandtext属性赋值说白了就是没写SQL语句 -.- 无语死了.

  3. 简易视频播放器2 (基于Qt、opencv)

    因项目需要,需要实现一个对以保存的监测视频快速查看功能. 查询网上一些资料,初步简易的实现了一下. 实际效果图: 该程序基于Qt5.4,opencv248,开发环境为win8.1 结构为: video ...

  4. ant 具体命令行展示代码

    C:\Users\xutianhao>ant -hant [options] [target [target2 [target3] ...]]Options: -help, -h print t ...

  5. WCF技术剖析之三十:一个很有用的WCF调用编程技巧[上篇]

    原文:WCF技术剖析之三十:一个很有用的WCF调用编程技巧[上篇] 在进行基于会话信道的WCF服务调用中,由于受到并发信道数量的限制,我们需要及时的关闭信道:当遇到某些异常,我们需要强行中止(Abor ...

  6. Git命令非主流札记

    使用git做开发的版本管理也有一年半之多了,但是始终都是常用的branch commit status diff push等一些再常用不过的命令,最近闲下来,打算学习一下高端用法,所以就静下心来好好读 ...

  7. asp.net错误.在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错

    解决办法:将该项目所在目录设置为虚拟目录,右键-转为应用程序.

  8. Android 应用程序签名

    本文主要介绍Android应用程序签名的相关理论知识以及怎样公布Android应用程序. 1.签名的概念 为大家所熟知的日常生活中的签名,它是代表某个人的特殊标记,用于唯一标识某个人.而Android ...

  9. 如何使用springmvc的@requestbody 返回json数据

    先配置 XXX_ servletxml <!-- 整合jackson 返回一个json格式 --><bean class="org.springframework.web. ...

  10. Spring mvc之提交表单

    表单内容: <body> <form action="user/login"> <table> <tr> <td>用户名 ...