S'identifier

API
Documentation
Ressources
Trucs & astuces
Libre
Gabarits
Services

Membres
Participer
Visiter

Contact

Meilleure résolution
mode 800 x 600

Optimisé pour
IE v.5
Netscape v.6
mais surtout pour
Mozilla v.1
minimum

 


Membre de Click-FR®, Réseau francophone Paie-Par-Click

ChangeDisplaySettings

Date de parution : 05/05/2000 - Cette fiche API a été lue 2026 fois

Description

ChangeDisplaySettings change les paramètres d'affichage pour le mode graphique spécifié.

Syntaxe

AppelDLL32("User32","ChangeDisplaySettingsA", &lpDevMode, dwFlags)

lpDevMode

Pointe sur une structure qui décrit le mode graphique à commuter. Le membre dmSize peut être initialisé à la taille en octets de la structure. Si lpDevMode est NULL, toutes les valeurs courantes dans le registre seront utilisées pour le paramétrage de l'affichage. Le passage du NULL pour ce paramètre est le moyen le plus facile de retourner le mode par défaut après un changement dynamique.

dwflags

Indique comment le mode graphique devra être changé, soit une des valeurs suivantes :

Valeur

Signification

0

Le mode graphique sera changé dynamiquement.

CDS_UPDATEREGISTRY

Le mode graphique sera changé dynamiquement et la base de registre sera mise à jour.

CDS_TEST

Le système teste si le mode graphique est supporté.

 

La fonction retourne une des valeurs suivantes :

Valeur

Signification

DISP_CHANGE_SUCCESSFUL

Changement effectué avec succès.

DISP_CHANGE_RESTART

L'ordinateur doit être redémarré pour que le changement de mode graphique fonctionne.

DISP_CHANGE_BADFLAGS

Un jeu invalide de paramètre a été passé.

DISP_CHANGE_FAILED

Echec sur le changement de mode graphique.

DISP_CHANGE_BADMODE

Le mode graphique n'est pas supporté.

DISP_CHANGE_NOTUPDATED

Impossible d'écrire dans la base de registre.

Compatibilité

Toutes versions sauf bibliothèque Win32s

Remarque

Aucune

Exemple 1

// Changer la résolution de l'écran mais garder
// le même nombre de couleurs pour éviter le redémarrage
dm est un DEVMODE
ModeNum est un entier long
RetVal est un entier
TypeReso est une chaîne
// Création d'une liste pour récupérer toutes les résolutions
// Ici la liste s'appelle LstReso
TANTQUE AppelDLL32("user32", "EnumDisplaySettingsA", Null, ModeNum, &dm)

TypeReso = ModeNum + TAB + dm:dmPelsWidth + TAB + ... dm:dmPelsHeight + TAB + dm:dmBitsPerPel + " bits" // 4 bits pour 16 couleurs
// 8 bits pour 256 couleurs
// 16 bits pour 65536 couleurs
ListeAjoute("LstReso", TypeReso)
ModeNum++

FIN

// Ce code vous est offert par Beaussier en ligne
// Remerciement à Patrick Levesque pour cet exemple
// On renseigne la structure DevMode
// en fonction du mode de résolution choisi
// Pour cela, créer une procédure en passant le numéro ModeNum
AppelDLL32("User32", "EnumDisplaySettingsA", Null, ModeNum, &dm)
RetVal = AppelDLL32("User32", "ChangeDisplaySettingsA", &dm, ModeNum)

SI RetVal Alors

SI RetVal > 0 Alors Info("Vous devez redémarrez pour effectuer le changement") Sinon Erreur("Mode graphique non supporté") FIN

FIN


Nombre de commentaire sur ChangeDisplaySettings : 0

Rappel : Le code fourni est compatible Windev v.4 et 5. Pour les versions supérieures, vous devez modifier le type des variables numériques. Par exemple : entier long devient entier.
Bien sûr, les marques citées sont déposées par leurs sociétés respectives. Ces pages sont à la disposition de tous, le code fourni est libre mais toute responsabilité est déclinée en cas de mauvais usage ou de dysfonctionnement.
© 2000-2005 Beaussier & Le Centre W..D..