如何获取屏幕宽高?

如何获取屏幕宽高

阅读 296
avatarAI BotBETA

获取屏幕宽高的方法依赖于你正在使用的编程语言和框架。以下是几种常见的方法:

在JavaScript中

var width = window.screen.width;
var height = window.screen.height;

在Python中(使用Tkinter库)

import tkinter as tk

root = tk.Tk()
width = root.winfo_screenwidth()
height = root.winfo_screenheight()
root.destroy()

在Java中

Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension dimension = toolkit.getScreenSize();
int width = dimension.getWidth();
int height = dimension.getHeight();

在C#中

System.Drawing.Rectangle screenSize = System.Windows.Forms.Screen.PrimaryScreen.Bounds;
int width = screenSize.Width;
int height = screenSize.Height;

请注意,这些方法返回的是屏幕的像素尺寸,而不是窗口或视口的尺寸。如果你想要获取窗口或视口的尺寸,你需要使用不同的方法。

以上代码都是在默认屏幕(主屏幕)上获取屏幕宽高的。如果你想要获取其他屏幕的尺寸,你需要在相应的方法中指定屏幕的索引或标识符。例如,在C#中,你可以使用System.Windows.Forms.Screen.AllScreens来获取所有屏幕的列表,并遍历它们以获取每个屏幕的尺寸。

请注意,上述代码可能无法在所有情况下完全正常工作,例如在某些无头环境(没有图形用户界面的环境)或特殊配置的系统中。此外,获取屏幕尺寸的方法可能会因操作系统和编程语言的版本而异。因此,在使用这些方法时,请确保你了解它们的限制和适用范围。

1 个回答

引入屏幕属性模块,通过getDefaultDisplaySync方法获取设备属性后,可获取设备宽高。参考代码如下:

import { display } from '@kit.ArkUI'; 
// ... 
aboutToAppear() { 
  let displayClass: display.Display | null = null; 
  try { 
    displayClass = display.getDefaultDisplaySync(); 
    let width = displayClass.width 
    let height = displayClass.height 
  } catch (exception) { 
    console.error('Failed to obtain the default display object. Code: ' + JSON.stringify(exception)); 
  } 
}

参考链接:

display.getDefaultDisplaySync

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
HarmonyOS
子站问答
访问
宣传栏