delphi 设置多屏幕
//poScreenCenter时,窗体会显示到主显示器的中央 ? function TGAEAMainForm.GetWorkArea(var R : TRect) : Boolean; procedure TGAEAMainForm.TempInitForm; procedure SetFormMonitor(Form:TCustomForm;MonitorIndex:integer); begin if (MonitorIndex>-1) and (MonitorIndex<Screen.MonitorCount) then //保证屏幕索引在范围内 begin Form.Left := 0; Form.Top := 0; Form.SetBounds(Screen.Monitors[MonitorIndex].Left + ((Screen.Monitors[MonitorIndex].Width - Form.Width) div 2),Screen.Monitors[MonitorIndex].Top + ((Screen.Monitors[MonitorIndex].Height - Form.Height) div 2),Form.Width,Form.Height); end; end; function GetPriMaryScreenIndex: Integer; var I : Integer; begin for I := 0 to Screen.MonitorCount -1 do if Screen.Monitors[I].Primary then begin Result := I; Break; end; end;var vR: TRect; vPrimaryIndex: Integer;begin vPrimaryIndex := GetPriMaryScreenIndex; if vPrimaryIndex <> -1 then SetFormMonitor(MainForm,vPrimaryIndex);// if GetWorkArea(vR) then// begin// MainForm.Left := vR.Left;// MainForm.Top := vR.Top;// end;end; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |