gpt4 book ai didi

linux - 以编程方式检查用户是否在桌面 - Linux

转载 作者:太空宇宙 更新时间:2023-11-04 09:02:53 25 4
gpt4 key购买 nike

我正在制作一个需要在桌面模式下运行的程序。我怎样才能 checkin C?还有,是否可以在(显示器的)C 中获取屏幕宽度和高度?

最佳答案

这是一个非常宽泛的问题,但我会咬住。我假设“桌面模式”是指正在运行的 X window system .由于您似乎没有首选的小部件工具包,我将展示一个使用 Xlib 的示例。

您可以简单地尝试打开显示并检查返回值。如果已启动,您还可以检索屏幕分辨率:

#include <stdio.h>
#include <X11/Xlib.h>

int main(int argc, char ** argv)
{
int screen_num;
unsigned int display_width, display_height;
Display *display;

/* First connect to the display server, as specified in the DISPLAY
environment variable. */
display = XOpenDisplay(NULL);
if (!display)
{
fprintf(stderr, "unable to connect to display");
return 1;
}

/* pull useful data out of the display object */
screen_num = DefaultScreen(display);

/* Display size is a member of display structure */
display_width = DisplayWidth(display, screen_num);
display_height = DisplayHeight(display, screen_num);

fprintf(stdout, "resolution is %d x %d\n", display_width, display_height);

return 0;
}

您必须使用 -lX11 进行编译。所有这些以及更多信息都可以从 the Xlib programming tutorial here 中了解到.

关于linux - 以编程方式检查用户是否在桌面 - Linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17423592/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com