自动适应屏幕分辨率
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;
以上是关于自动适应屏幕分辨率的主要内容,如果未能解决你的问题,请参考以下文章