文档章节

WinAPI: InvertRect - 翻转矩形中像素的颜色

涂孟超
 涂孟超
发布于 2014/09/26 15:37
字数 115
阅读 7
收藏 0
点赞 0
评论 0
本例效果图:


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

var
  R: TRect;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Button1.Caption := '绘制矩形';
  Button2.Caption := '反色';
  Self.Color := clWhite;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  R := Bounds(20, 20, 150, 100);
  Randomize;
  Canvas.Brush.Color := Random($FFFFFF);
  Canvas.Pen.Color := Random($FFFFFF);
  Canvas.Pen.Width := 10;
  Canvas.Rectangle(R);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  InvertRect(Canvas.Handle, R);
end;

end.

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2008/05/22/1205341.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2004
码字总数 14107
作品 0
深圳
程序员
第二章 2绘制线条简单图形

线条和形状 同Windows其它版本相比,Windows CE提供相当少的功能的领域之一就是基本线条绘制和形状绘制功能。用来创建复杂环形的Chord, Arc, 和Pie函数被去掉了。大部分使用"当前点[current ...

技术小胖子 ⋅ 2017/11/08 ⋅ 0

JavaScript 编程精解 中文第三版 十七、在画布上绘图

十七、在画布上绘图 原文:Drawing on Canvas 译者:飞龙 协议:CC BY-NC-SA 4.0 自豪地采用谷歌翻译 部分参考了《JavaScript 编程精解(第 2 版)》 绘图就是欺骗。 M.C. Escher,由 Bruno ...

ApacheCN_飞龙 ⋅ 05/12 ⋅ 0

OpenGL中位图的操作(glReadPixels,glDrawPixels和glCopyPi...

1、 BMP文件格式简单介绍 BMP文件是一种像素文件,它保存了一幅图象中所有的像素。这种文件格式可以保存单色位图、16色或256色索引模式像素图、24位真彩色图象,每种模式种单一像素的大小分别...

代码学习者01 ⋅ 2013/09/20 ⋅ 0

OpenGL像素操作

今天我们先简单介绍Windows中常用的BMP文件格式,然后讲OpenGL的像素操作。虽然看起来内容可能有点多,但实际只有少量几个知识点,如果读者对诸如“显示BMP图象”等内容比较感兴趣的话,可能...

teacheryang ⋅ 2010/11/19 ⋅ 0

iOS开发CoreGraphics核心图形框架之七——图像处理

iOS开发CoreGraphics核心图形框架之七——图像处理 一、引言 位图图像数据实际上一个像素阵列,其中每个像素代表了图像中的一个点。位图实际上只支持矩形区域的渲染,但是使用透明技术可以实...

珲少 ⋅ 2016/11/28 ⋅ 0

Unity Shader 学习笔记(20) 卷积、卷积核、边缘检测算子、边缘检测

Unity Shader 学习笔记(20) 卷积、卷积核、边缘检测算子、边缘检测 参考书籍:《Unity Shader 入门精要》 书中算子Bug Unity Shader 学习笔记(26) 边缘检测(深度和法线纹理) 彻底理解数...

l773575310 ⋅ 2017/11/22 ⋅ 0

OpenGL绘图实例:直线、颜色填充与鼠标响应

Bresenham直线生成算法 在数学上,直线是没有宽度的、由无数个点构成的集合。对直线进行光栅化,就是在显示器所给定的有限个像素矩阵中,确定最佳逼近于该直线的一组像素。在本次实验中,我采...

初雪之音 ⋅ 2016/03/08 ⋅ 0

Lisp-Stat 翻译 —— 第八章 绘图窗体

第八章 绘图窗体 Lisp-Stat提供的统计绘图其基础是由两个级别组成的。较低的级别将由本章描述,它提供了在窗体里绘制线与图形的工具,还有对用户动作产生的时间做出响应。第二级别,会在下一...

烟波 ⋅ 2014/09/01 ⋅ 2

如何制作玫瑰金色的手机图标

先放上一张图: 很漂亮对不对,其实这个不难制作,几步就能搞定,主要是应用斜面和浮雕以及投影和内阴影,就可以轻松制作出漂亮的UI图标。 首先呢,打开PS,新建一个画布,宽度为1000像素,高...

材大难为用 ⋅ 2017/08/12 ⋅ 0

HTML 5 canvas —— 基本语法

目录 简述 canvas 基础 2D context API 小节 简述 HTML 5 规范引进了很多新特性,其中最令人期待的之一就是 元素。HTML 5 提供了通过 JavaScript 绘制图形的方法,此方法使用简单但功能强大。...

程明卫 ⋅ 2011/04/01 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

来自一个优秀Java工程师的简历

写在前面: 鉴于前几天的一份前端简历,虽然带着很多不看好的声音,但却帮助了很多正在求职路上的人,不管评论怎么说,我还是决定要贴出一份后端的简历。 XXX ID:357912485 目前正在找工作 ...

颖伙虫 ⋅ 17分钟前 ⋅ 0

Confluence 6 恢复一个站点有关使用站点导出为备份的说明

推荐使用生产备份策略。我们推荐你针对你的生产环境中使用的 Confluence 参考 Production Backup Strategy 页面中的内容进行备份和恢复(这个需要你备份你的数据库和 home 目录)。XML 导出备...

honeymose ⋅ 今天 ⋅ 0

JavaScript零基础入门——(九)JavaScript的函数

JavaScript零基础入门——(九)JavaScript的函数 欢迎回到我们的JavaScript零基础入门,上一节课我们了解了有关JS中数组的相关知识点,不知道大家有没有自己去敲一敲,消化一下?这一节课,...

JandenMa ⋅ 今天 ⋅ 0

火狐浏览器各版本下载及插件httprequest

各版本下载地址:http://ftp.mozilla.org/pub/mozilla.org//firefox/releases/ httprequest插件截至57版本可用

xiaoge2016 ⋅ 今天 ⋅ 0

Docker系列教程28-实战:使用Docker Compose运行ELK

原文:http://www.itmuch.com/docker/28-docker-compose-in-action-elk/,转载请说明出处。 ElasticSearch【存储】 Logtash【日志聚合器】 Kibana【界面】 答案: version: '2'services: ...

周立_ITMuch ⋅ 今天 ⋅ 0

使用快嘉sdkg极速搭建接口模拟系统

在具体项目研发过程中,一旦前后端双方约定好接口,前端和app同事就会希望后台同事可以尽快提供可供对接的接口方便调试,而对后台同事来说定好接口还仅是个开始、设计流程,实现业务逻辑,编...

fastjrun ⋅ 今天 ⋅ 0

PXE/KickStart 无人值守安装

导言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装。 常规的办法有什么? 光盘安装系统 ===> 一...

kangvcar ⋅ 昨天 ⋅ 0

使用Puppeteer撸一个爬虫

Puppeteer是什么 puppeteer是谷歌chrome团队官方开发的一个无界面(Headless)chrome工具。Chrome Headless将成为web应用自动化测试的行业标杆。所以我们很有必要来了解一下它。所谓的无头浏...

小草先森 ⋅ 昨天 ⋅ 0

Java Done Right

* 表示难度较大或理论性较强。 ** 表示难度更大或理论性更强。 【Java语言本身】 基础语法,面向对象,顺序编程,并发编程,网络编程,泛型,注解,lambda(Java8),module(Java9),var(...

风华神使 ⋅ 昨天 ⋅ 0

Linux系统日志

linux 系统日志 /var/log/messages /etc/logrotate.conf 日志切割配置文件 https://my.oschina.net/u/2000675/blog/908189 logrotate 使用详解 dmesg 命令 /var/log/dmesg 日志 last命令,调......

Linux学习笔记 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部