[教學]如何讓DELPHI 5 程式,在任何解析度下均可執行

Home Home
引用 | 編輯 demon
2003-07-18 12:57
樓主
推文 x0
如何讓DELPHI 5 程式,在任何解析度 ..

訪客只能看到部份內容,免費 加入會員



獻花 x0
引用 | 編輯 jackysoft
2003-11-02 11:26
1樓
  
假如你在800*600的分辨率下的form,第一步:
inplementation
const
ScreenWidth: LongInt = 800; {I designed my form in 800x600 mode.}
ScreenHeight: LongInt = 600;

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
scaled := true;
if (screen.width <> ScreenWidth) then
begin
height := longint(height) * longint(screen.height) div ScreenHeight;
width := longint(width) * longint(screen.width) div ScreenWidth;
scaleBy(screen.width, ScreenWidth);
end;
end;

下一步,要每個子控制的字体改變到合适的大小:
type
TFooClass = class(TControl); { needed to get at protected }
{ font property }

var
i: integer;
begin
for i := ControlCount - 1 downto 0 do
TFooClass(Controls).Font.Size ]).Font.Size;
end;

獻花 x0