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. OGR SQL

    The OGRDataSource supports executing commands against a datasource via the OGRDataSource::ExecuteSQL ...

  2. [Android] FileInputStream跟踪

    1. 源起 需要跟踪FileInputStream的Read的Nativie实现,开始走了弯路,Java工程下的FileInputStream实现与Android工程的实现不同.另外,http://b ...

  3. Http的操作(不传递参数)

    ttpResponse  httpResponse = null;       HttpEntity  httpEntity = null; HttpGet httpGet = new HttpGet ...

  4. c语言中float、double、long double在内存中存储方式

    存储格式中的二机制转为浮点数: 浮点型变量在计算机内存中占用4个字节(4 Byte),即32-bit,一个浮点数由2部分组成:底数m  和 指数e: 底数部分:使用2进制数来表示此浮点数的实际值: 指 ...

  5. ArrayList集合-[长度问题]--C#

    list.Count//获取集合中实际元素的个数.list.Capacity//获取集合中可包含的元素数. /** *   每次集合中实际包含元素的个数(Count)超过了可以包含的元素的个数(Cap ...

  6. Repeater控件

    一:http://www.cnblogs.com/foolin/archive/2011/08/31/2161342.html 二:http://www.cnblogs.com/shipfi/arch ...

  7. Gas Station|leetcode 贪心

    贪心:尽量将gas[i]-cost[i]>0的放在前面,gas[i]-cost[i]<0的放在后面.(路程的前面有汽油剩下,耗汽油的放在路程的后面). 能否全程通过的 条件 是:sum(g ...

  8. STLport在vc6中的集成

    STLport的下载 http://sourceforge.net/projects/stlport/ STLport的编译 * 试验环境 : win7x64sp1 + vc6sp6* 打开控制台窗口 ...

  9. Qt实现不同Treewidget之间拖拽

    拖拽是编程中经常要用到的,我这里主要是实习了Treewidget之间直接拖拽Item,按下Ctrl键的话是copy,不按Ctrl则是Move.以下是实现代码 class TreeItemMimeDat ...

  10. SqlServer和Oracle中一些常用的sql语句6 存储过程

    --不带参数的存储过程 CREATE procedure proc_sql1 as begin declare @i int set @i=0 while @i<26 begin print c ...