• 2个多边形,其中一个包围另一个,如何将中间的环带区域涂成红色


    1.  画两次不就可以了。。第一次画大的,第二画小的。。

    procedure   TForm1.Button1Click(Sender:   TObject);  
       
      begin  
            with   Canvas   do  
            begin  
                Rectangle(100,100,300,300);  
                Rectangle(150,150,250,250);  
                Brush.Color   :=   clRed;  
                FillRect(rect(150,150,250,250));  
            end;  
      end;

    2.先创建出HRGH的区域,再用CombineRgn获取环带的区域,之后填充:  
       
      var   a,   b,   c:   HRGN;  
              hbr:   HBRUSH;  
      begin  
          //     Canvas.Rectangle(100,200,400,400);  
          //     Canvas.RoundRect(120,220,300,350,100,100);  
          hbr   :=   CreateSolidBrush(clRed);  
          a:=CreateRectRgn(100,200,400,400);  
          b:=CreateRoundRectRgn(120,220,300,350,100,100);  
          c:=CreateRectRgn(0,0,1,1);  
          CombineRgn(c,   a,   b,   RGN_DIFF);  
          FillRgn(Canvas.Handle,c,   hbr);  
      end;

  • 相关阅读:
    javascript 自定义事件
    tf.control_dependencies
    神经网络全连接层+softmax:
    Tensorflow图级别随机数设置-tf.set_random_seed(seed)
    tensorflow-GPU配置
    python-生成器(generation)
    编码器内容-去噪
    Group Convolution组卷积
    VSCode 设置vue 保存自动格式化代码
    redis外部连接
  • 原文地址:https://www.cnblogs.com/zhangzhifeng/p/2119791.html
Copyright © 2020-2023  润新知