Inverser l'ecran

Signaler
Messages postés
48
Date d'inscription
jeudi 10 juillet 2003
Statut
Membre
Dernière intervention
27 juillet 2008
-
Messages postés
48
Date d'inscription
jeudi 10 juillet 2003
Statut
Membre
Dernière intervention
27 juillet 2008
-
Bonjour,
Je voudrai faire une blague a un ami en lui envoyant un programme qui inverse l'image de l'ecran (de fasson temporaire bien sur), le probleme c'est que je voit pas du tout comment faire ...
Quelqun aurai une idée ?

4 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
Exemple "SCRAMBLE" du chaopitre 14 de Petzold.
http://brunews.com/brunews/download/CP5.zip
http://brunews.com/brunews/download/CP5Sources.zip

ciao...
BruNews, MVP VC++
Messages postés
48
Date d'inscription
jeudi 10 juillet 2003
Statut
Membre
Dernière intervention
27 juillet 2008

Ah oui sympa l'effet ^^ mais ce n'est pas vraiment ce que je cherche a faire ...
Quend je parle d'inversement de l'ecran je parle de l'affichage (comme si on mettai son ecran a l'envers). J'ai deja vu cette effet dans certain programme (il y a lomgtemp) donc c'est que c'est possible ...
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
Existe encore, je l'ai vu il y a peu sur un portable, c'est une fonctionnalité du gestionnaire d'écran.

ciao...
BruNews, MVP VC++
Messages postés
48
Date d'inscription
jeudi 10 juillet 2003
Statut
Membre
Dernière intervention
27 juillet 2008

Bon apres plusieur recherche un peu partout sur le web, j'en sui arriver a ce petit bou de code :

################################################
/*Define nécessaire*/
#define DMDO_DEFAULT 0
#define DMDO_90 1
#define DMDO_180 2
#define DMDO_270 3
#define DM_DISPLAYORIENTATION 0x00000080
#define CDS_VIDEOPARAMETERS 0x00000020
/*Creation des variables*/
DEVMODE devMode = {0};
devMode.dmSize = sizeof(DEVMODE);
/*Recuperation du DEVMODE actuel*/
EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &devMode);
/*On indique qu'on veut faire une orientation*/
devMode.dmFields = DM_DISPLAYORIENTATION;
devMode.dmOrientation = DMDO_180;
/*Test*/
if(ChangeDisplaySettingsEx(NULL, &devMode, NULL, CDS_TEST, NULL)!=DISP_CHANGE_SUCCESSFUL){
MessageBox(NULL, "pasok1", "", MB_OK);
/*Validation*/
if(ChangeDisplaySettingsEx(NULL, &devMode, NULL, CDS_VIDEOPARAMETERS, NULL)!=DISP_CHANGE_SUCCESSFUL){
MessageBox(NULL, "pasok2", "", MB_OK);
}
}
################################################

Le probleme c'est que sa marche pas ...
Au test, seul la messagebox pasok2 s'affiche.