zoukankan      html  css  js  c++  java
  • 获取窗口矩形的四种方法: GetClientRect、ClientRect、GetWindowRect、BoundsRect

    其中 GetClientRect、ClientRect 获取的是窗口的客户区矩形;

    GetWindowRect、BoundsRect 是获取窗口矩形;

    另外, 还有一个 Windows.GetClientRect(使用方法同 GetWindowRect, 它们都是 API 函数),
    这里使用的 GetClientRect 是 Forms.GetClientRect.

    本例效果图:


    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
        procedure FormCreate(Sender: TObject);
        procedure FormPaint(Sender: TObject);
        procedure FormResize(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      Color := clWhite;
    end;
    
    procedure TForm1.FormPaint(Sender: TObject);
    const
      str = 'L:%d; T:%d; R:%d; B:%d - ';
    var
      R1,R2,R3,R4: TRect;
      buf: array[Byte] of Char;
      x,y,h: Integer;
    begin
      R1 := GetClientRect;
      R2 := Self.ClientRect;
      GetWindowRect(Handle, R3);
      R4 := Self.BoundsRect;
    
      x := 10;
      y := 10;
      h := 10;
    
      Randomize;
      Canvas.Font.Color := Random($FFFFFF);
      wvsprintf(buf, str + 'GetClientRect', @R1);
      Canvas.TextOut(x, y, buf);
      y := y + h + Canvas.TextHeight(buf);
    
      wvsprintf(buf, str + 'Self.ClientRect', @R2);
      Canvas.TextOut(x, y, buf);
      y := y + h + Canvas.TextHeight(buf);
    
      Canvas.Font.Color := Random($FFFFFF);
      wvsprintf(buf, str + 'GetWindowRect', @R3);
      Canvas.TextOut(x, y, buf);
      y := y + h + Canvas.TextHeight(buf);
    
      wvsprintf(buf, str + 'Self.BoundsRect', @R4);
      Canvas.TextOut(x, y, buf);
    end;
    
    procedure TForm1.FormResize(Sender: TObject);
    begin
      Repaint;
    end;
    
    end.
    
  • 相关阅读:
    C++笔记 谓词 1
    win7 ipv6设置(isatap)
    C++笔记
    打水印
    jquery导航滚动固定在顶部
    javascript获得属性
    tr光棒效果
    按字母查找
    js购物车
    数据采集
  • 原文地址:https://www.cnblogs.com/del/p/1209857.html
Copyright © 2011-2022 走看看