自动适应屏幕分辨率

Posted hssbsw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动适应屏幕分辨率相关的知识,希望对你有一定的参考价值。

unit ypkodac;

 

interface

 

uses

  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

  StdCtrls, Grids, DBGrids, Db, MemDS, DBAccess, Ora;

  const

    DefaultWidth   =  1024;//编程时的分辨率

    DefaultHeight   =  768;

 

 

type

  TForm1 = class(TForm)

    OraSession1: TOraSession;

    Oramysql: TOraQuery;

    DataSource1: TDataSource;

    DBGrid1: TDBGrid;

    Edit1: TEdit;

    Button1: TButton;

    Button2: TButton;

    tymdz: TCheckBox;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Edit1KeyPress(Sender: TObject; var Key: Char);

    procedure FormCreate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

   TMyControl= class(TControl); //在此加入聲明

var

  Form1: TForm1;

 

implementation

 

{$R *.DFM}

 

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

 

 

procedure TForm1.FormCreate(Sender: TObject);

var

    i:   integer;

    a:   real;

begin

    if   Screen.Width   <>   DefaultWidth   then

    begin

        height:=longint(height)*longint(screen.height)   div   DefaultHeight;

        width:=longint(width)*longint(screen.width)   div   DefaultWidth;

        scaleby(screen.width   ,   DefaultWidth);

        for   i   :=   0   to   self.ControlCount   -1   do

        begin

            a   :=   screen.Height   /   DefaultHeight   *   TMyControl(self.Controls[i]).Font.Size;

            TMyControl(self.Controls[i]).Font.Size   :=   trunc(a);

        end;

    end;

end;

以上是关于自动适应屏幕分辨率的主要内容,如果未能解决你的问题,请参考以下文章

qt中怎样使程序界面自动适应屏幕分辨率

C#如何使winform程序自适应屏幕分辨率显示

unity怎么让画面适应各种屏幕分辨率

Android自适应屏幕方向大小和分辨率,及字体设置

Android自适应屏幕分辨率与国际化

c#winform太大安装到小屏幕电脑显示不全,怎么实现自动适应并显示所��