我希望重用启动图像作为我的应用程序的背景。目前我正在做这样的事情:
procedure TFormMain.InitRepeat_Background;
var
P: string;
R: TMyRetrieveFileResult;
begin
P := '';
if ((P = '') and (FScreenOrientation = TScreenOrientation.soPortrait)) then
begin
P := 'app_background_480x800.png';
end
;
if ((P = '') and (FScreenOrientation = TScreenOrientation.soLandscape)) then
begin
P := 'app_background_800x480.png';
end
;
if (P <> '')then
begin
R := TMyRetrieveFileResult.Create(FBitmapBuffer, '', 0, -1);
ReadGenericBitmapOffline(R, '', P);
if R.Found then
begin
ImageBackground.Bitmap.Assign(R.BitmapRef);
ImageBackground.WrapMode := TImageWrapMode.iwStretch;
end
;
end
;
end;
然而,拉伸的东西并不是最漂亮的(也不是最丑的,但仍然如此)。有什么方法可以检测到要显示的最佳背景图像(来自“启动图像池”)作为背景?
我想我可以尝试检测特定设备或...尝试检测最接近的屏幕分辨率?或者也许有一个我可以使用的 API(无论 Delphi 使用什么来选择启动时的启动图像?)