- 人气:
- 放大
- 缩小
- 二维码
- 赞赏
delphi FMX获取屏幕方向
关于如何使用由Delphi开发的智能手机应用程序检查屏幕方向的备忘录。
环境:Delphi 10.3 Rio
方法
可以通过查询FMX.Platform.TPlatformServices上的IFMXScreenService获得。
uses
FMX.Platform;
{$R *.fmx}
procedure TForm1.btnGetScreenOrientationClick(Sender: TObject);
var
screenService: IFMXScreenService;
begin
if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, screenService) then
begin
case screenService.GetScreenOrientation of
TScreenOrientation.Portrait: ShowMessage('纵向');
TScreenOrientation.Landscape: ShowMessage('横向');
TScreenOrientation.InvertedPortrait: ShowMessage('上下');
TScreenOrientation.InvertedLandscape: ShowMessage('横向');
end;
end;
end;
IFMXScreenService还提供了一个允许您获取屏幕尺寸和屏幕比例的功能。
GetScreenSize
获取屏幕比例
在实际机器上检查时
需要设置项目选项->应用程序->方向。
由于未检查初始值,因此即使将设备垂直上下颠倒,屏幕也不会旋转。
如果要启用垂直倒置,则需要检查方向。