GNU/Linux >> LINUX-Kenntnisse >  >> Linux

C++ Linux:Holen Sie sich die Aktualisierungsrate eines Monitors

Verwenden Sie die XRandr-API (man 3 Xrandr). Siehe hier für ein Beispiel:

  • http://www.blitzbasic.com/Community/posts.php?topic=86911

Sie können sich auch den Code für xrandr(1) ansehen.

Edit1:Für die Nachwelt:

Beispielcode leicht angepasst, so dass es eher eine Demo ist:

#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <string>
#include <iostream>
#include <unistd.h>
#include <X11/Xlib.h>
#include <X11/extensions/Xrandr.h>

int main()
{
    int num_sizes;
    Rotation current_rotation;

    Display *dpy = XOpenDisplay(NULL);
    Window root = RootWindow(dpy, 0);
    XRRScreenSize *xrrs = XRRSizes(dpy, 0, &num_sizes);
    //
    //     GET CURRENT RESOLUTION AND FREQUENCY
    //
    XRRScreenConfiguration *conf = XRRGetScreenInfo(dpy, root);
    short current_rate = XRRConfigCurrentRate(conf);
    SizeID current_size_id = XRRConfigCurrentConfiguration(conf, &current_rotation);

    int current_width = xrrs[current_size_id].width;
    int current_height = xrrs[current_size_id].height;
    std::cout << "current_rate = " << current_rate << std::endl;
    std::cout << "current_width = " << current_width << std::endl;
    std::cout << "current_height = " << current_height << std::endl;

    XCloseDisplay(dpy);
}

Kompilieren mit:

g++ 17797636.cpp -o 17797636 -lX11 -lXrandr

Ausgabe:

$ ./17797636 
current_rate = 50
current_width = 1920
current_height = 1080

Linux
  1. Wie erhalte ich die Anzahl der CPUs in Linux mit C?

  2. C++ erhält Linux-Distributionsname\Version

  3. C++ Get-String aus der Zwischenablage unter Linux

  4. Wie erhalte ich die Anzahl der physischen Festplatten in Linux?

  5. Wie erhalte ich die physische Größe einer Datei unter Linux?

Kehren Sie mit dem TWM-Linux-Desktop zu den Grundlagen zurück

So erhalten Sie die Größe eines Verzeichnisses in Linux

So erhalten Sie den Dateinamen aus dem vollständigen Pfad in Linux

So erhalten Sie die Anzahl der Prozessoren / Kerne in Linux

Holen Sie sich eine IP-Adresse unter Linux:Entdecken Sie die vielen Möglichkeiten

Wie bekomme ich den Pfad zur aktuellen Datei (pwd) in Linux von C?