文档章节

WinAPI: SetRectEmpty、IsRectEmpty

涂孟超
 涂孟超
发布于 2014/09/26 15:35
字数 183
阅读 3
收藏 0
点赞 0
评论 0
SetRectEmpty: 使矩形为空;

IsRectEmpty: 判断矩形是否为空;

所谓矩形为空就是矩形是无区域的, 或者说是 Right <= Left 或 Bottom <= Top 情形下的矩形.
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
  R: TRect;
  buf: array[Byte] of Char;
begin
  R := Rect(10,20,-30,-40);
  ShowMessage(BoolToStr(IsRectEmpty(R), True)); {True; 是空矩形}

  R := Rect(10,20,30,40);
  ShowMessage(BoolToStr(IsRectEmpty(R), True)); {False}

  wvsprintf(buf, 'L:%d, T:%d, R:%d, B:%d', @R);
  ShowMessage(buf); {L:10, T:20, R:30, B:40}

  SetRectEmpty(R);

  ShowMessage(BoolToStr(IsRectEmpty(R), True)); {True}

  wvsprintf(buf, 'L:%d, T:%d, R:%d, B:%d', @R);
  ShowMessage(buf); {L:0, T:0, R:0, B:0}
end;

end.

 
 
 
 
 

 

 

  
关于 wvsprintf 函数请参见: http://www.cnblogs.com/del/archive/2008/04/18/1159045.html

© 著作权归作者所有

共有 人打赏支持
涂孟超
粉丝 12
博文 2004
码字总数 14107
作品 0
深圳
程序员
windows时间 api

typedef struct _FILETIME { DWORD dwLowDateTime; DWORD dwHighDateTime; } FILETIME, *PFILETIME, *LPFILETIME; typedef struct _SYSTEMTIME { WORD wYear; WORD wMonth; WORD wDayOfWeek;......

江河海流 ⋅ 2014/05/08 ⋅ 0

Go语言Windows程序设计(1)--简单弹出消息窗口

这几天公司比较空,又开始玩Go语言,发现它可以通过一个https://github.com/lxn/go-winapi go-winapi的库写windows程序,于是就开始玩了,当然,也已经有了很多基于它而进一步封装便于开发的...

卧雪Sirk ⋅ 2016/03/19 ⋅ 0

如何调用WINAPI声明的动态库?

一个库的函数以 WINAPI声明 然后调的时侯就有问题 以WINAPI声明的函数 比如 long dlltest(); 就会变成long _dlltest@0() 试着用 typef long (stdcall *_pdlltest)(); 这样去导 结果导不出来 ...

我是你 ⋅ 2014/04/29 ⋅ 0

这段代码为什么会崩啊

CCriticalSection atrtest; list list2; void deleteList(); //线程1的入口函数 DWORD WINAPI Fun1Proc(LPVOID lpParameter)//thread data { while(TRUE) { deleteList(); } return 0; } //线......

智勇 ⋅ 2014/05/22 ⋅ 3

PNotes 这软件不错

这软件是纯C的WINAPI写的 支持换肤等功能 学习WINAPI的,可以好好研究一下源代码

fdasljlf ⋅ 2011/04/24 ⋅ 20

int WINAPI WinMain()函数

int WINAPI WinMain( HINSTANCE hInstance,//当前实例句柄 HINSTANCE hPrevInstance,//先前实例句柄 LPSTR lpCmdLine,//命令行参数 int nCmdShow //显示状态(最大化、最小化、隐藏) ); WIN...

我是一只鱼 ⋅ 2011/12/05 ⋅ 0

multiprocessing whith python3

代码如下 from multiprocessing import Process, Lockimport time, os, sys def sayhi(i): if name == "main": sys.stdout.flush() print 不出结果 不然就报错 要么就是print信息不完整。 错......

炮炮-雷锋 ⋅ 2015/01/09 ⋅ 2

Go调用Window SendARP() 方法

首先用了walk里面的一个winapi.go "runtime""syscall""unsafe" runtime.LockOSThread() S_OK = 0x00000000S_FALSE = 0x00000001E_UNEXPECTED = 0x8000FFFFE_NOTIMPL = 0x80004001E_OUTOFMEMO......

独孤小败 ⋅ 2012/10/31 ⋅ 0

多线程同步:互斥对象、事件对象、关键代码段

互斥对象、事件对象、关键代码段 一、互斥对象和事件对象属于内核对象,利用内核对象进行线程同步,速度较慢,但可以实现在多个进程中各线程间进行同步。 二、关键代码段式工作在用户方式下,...

Git_Android ⋅ 2012/09/12 ⋅ 0

如何使用C#操作WinAPI

Windows API是对Windows操作系统的API函数,在C#中调用Windows API的实质是托管代码对非托管代码的调用。 主要使用的格式就是: using System.Runtime.InteropServices; namespace TestWinA...

王二狗子11 ⋅ 01/08 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

android -------- 颜色的半透明效果配置

最近有朋友问我 Android 背景颜色的半透明效果配置,我网上看资料,总结了一下, 开发中也是常常遇到的,所以来写篇博客 常用的颜色值格式有: RGB ARGB RRGGBB AARRGGBB 这4种 透明度 透明度...

切切歆语 ⋅ 6分钟前 ⋅ 0

CentOS开机启动subversion

建立自启动脚本: vim /etc/init.d/subversion 输入如下内容: #!/bin/bash## subversion startup script for the server## chkconfig: 2345 90 10# description: start the subve......

随风而飘 ⋅ 9分钟前 ⋅ 0

Nginx + uwsgi @ubuntu

Nginx 安装 & 启动 sudo apt-get install nginx  #安装fnngj@ubuntu:~$ /etc/init.d/nginx start  #启动fnngj@ubuntu:~$ /etc/init.d/nginx stop  #关闭fnngj@ubuntu:~$ /etc/init.d/......

袁祾 ⋅ 10分钟前 ⋅ 0

版本控制工具

CSV , SVN , GIT ,VSS

颖伙虫 ⋅ 12分钟前 ⋅ 0

【2018.06.19学习笔记】【linux高级知识 13.1-13.3】

13.1 设置更改root密码 13.2 连接mysql 13.3 mysql常用命令

lgsxp ⋅ 20分钟前 ⋅ 0

LVM

LVM: 硬盘划分分区成物理卷->物理卷组成卷组->卷组划分逻辑分区。 1.磁盘分区: fdisk /dev/sdb 划分几个主分区 输入t更改每个分区类型为8e(LVM) 使用partprobe生成分区的文件:如/dev/sd...

ZHENG-JY ⋅ 48分钟前 ⋅ 0

彻底删除Microsoft Office的方法

参照此链接彻底删除Office https://support.office.com/zh-cn/article/%e4%bb%8e-pc-%e5%8d%b8%e8%bd%bd-office-9dd49b83-264a-477a-8fcc-2fdf5dbf61d8?ui=zh-CN&rs=zh-CN&ad=CN......

Kampfer ⋅ 今天 ⋅ 0

大盘与个股之间关系

大盘走多:积极出手 顺势加码 大盘走空: 少量出手 退场观望 大盘做头:逆势减码 少量操作 大盘做底 : 小量建仓 小量试单

guozenhua ⋅ 今天 ⋅ 0

Day16 LVM(逻辑卷管理)与磁盘故障小案例

lvm详解 简述 LVM的产生是因为传统的分区一旦分区好后就无法在线扩充空间,也存在一些工具能实现在线扩充空间但是还是会面临数据损坏的风险;传统的分区当分区空间不足时,一般的解决办法是再...

杉下 ⋅ 今天 ⋅ 0

rsync实现多台linux服务器的文件同步

一、首先安装rsync,怎样安装都行,rpm,yum,还是你用源码安装都可以。因为我用的是阿里云的ESC,yum install rsync就ok了。 二、配置rsync服务 1.先建立个同步数据的帐号 123 groupadd r...

在下头真的很硬 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部