perl - 确定屏幕尺寸的跨平台技术

标签 perl

是否有一种好的跨平台方式来获取屏幕尺寸? 我经常用 PerlTk 这样做:

 use Tk;
 my $mw = MainWindow->new;
 my $screen_width  = $mw->screenwidth();   
 my $screen_height = $mw->screenheight();  

但最好不要为了执行此操作而加载所有 Tk。

这看起来像是一种很好的 X11 特定方式来做这些事情(GetRootWindow 应该适用于屏幕尺寸):

Perl: Getting the geometry of a window with X11 WindowID

但我认为跨平台的方法会更好。

具体来说,我正在寻找确定以像素为单位的显示器尺寸的方法,这是 Tk 的屏幕宽度和屏幕高度返回的值。

最佳答案

在大多数 POSIX-y 系统上:

use Curses ();
my $screen_width = $Curses::COLS;
my $screen_height = $Curses::LINES;

这些值不会在调整屏幕大小时自动更新。

关于perl - 确定屏幕尺寸的跨平台技术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73777502/

相关文章:

regex - 为什么 regcomp 在 perl 5.16.2 中比 perl 5.8.8 慢?

Perl、unicode 和区域设置 : how to process string in non-utf8 locale using `perl -p -i -e' ?

regex - 如何在 Perl 中找到与正则表达式匹配的子字符串的索引位置?

regex - perl 删除连续的重复行

perl - 合并两个 yml 文件不处理重复项?

Perl 脚本不在 google chrome 上保存 cookie?

perl - 使用 perl .t 文件在 emacs 中突出显示语法

linux - 为 QNX 6.6.0 armle v7 交叉编译 perl

arrays - 将文件读入多维数组并跳过包含 Perl 中某些信息的行的最佳方法

c++ - 在 Linux 上监视目录的程序