Bonjour a tous,
je souhaite recuperer la resolution de l ecran de l envirronement graphique pour l utiliser dans mon programme.
Savez ou ce situe cette information ?
Merci d avance.
Cordialement.
Version imprimable
Bonjour a tous,
je souhaite recuperer la resolution de l ecran de l envirronement graphique pour l utiliser dans mon programme.
Savez ou ce situe cette information ?
Merci d avance.
Cordialement.
Citation:
Envoyé par loupin
c'est celle avec l'étoileCode:xrandr -d $DISPLAY --verbose
Merci beaucoup pour ta reponse.
Sais tu dans quel fichier est situe cette info.
En fait je souhaite le recuperer en C++ , j aurai du etre plus precis.
Cordialement.
Citation:
Envoyé par loupin
Dans ton /etc/X11/xorg.conf mais ca te donne pas la conf actuelle !
Comme tu dois le savoir, la bibliothèque standart du c++ ne fournit aucune fonction d'interface avec le système graphique.
Comme tu es sous linux, je supposes que tu utilises un serveur X.
Dans ce cas tu peux utiliser:
XDisplayHeight
XDisplayWidth
Mais attention ça ne fonctionne que sur un environement à base de serveur X.
un petit lien: xlib manual
ps: il faut inclure <usr/X11R6/include> et utiliser <usr/X11R6/lib/libX11.so>, sur une mandriva 2006 en tout cas.
Bonjour,
MatRem, ta solution est un peu trop bas niveau. Aujourd'hui, peu de gens utilisent la xlib directement.
Il faut savoir que ce soit avec gtk/qt/wxwidget, tu auras une façon d'avoir cette information. La question est donc: quelle est la bibliothèque graphique dans ton programme ?
A vrai dire s'il n'a pas besoin d'un programme portable et qu'il tourne effectivement sur un linux, c'est quand même une solution trés simple et plutôt légère puisqu'il aura forcément libX11 sur son pc:
Et voilà c'est fait ;)Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 #include <X11/Xlib.h> #include <cstdlib> using namespace std; int main(){ Display * display = XOpenDisplay(NULL); int defaultScreen = XDefaultScreen(display); int width = XDisplayWidth(display, defaultScreen); int height = XDisplayHeight(display, defaultScreen); return EXIT_SUCCESS; }
Par contre s'il utilise déjà une bibliothèque d'interface graphique, où s'il veut fait un programme qui tourne sur autre chose, alors là ça vaut pas le coup.
Merci beaucoup pour toutes vos reponses, cé exactement ce que je cherchais.
@+