Cimment inverser un changement de résolution ?

Tyrell2 Messages postés 251 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 2 novembre 2010 - 19 janv. 2007 à 13:15
Tyrell2 Messages postés 251 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 2 novembre 2010 - 20 janv. 2007 à 10:24
bonjour,

je cherche à developper une application windows avec 3 boutons de choix de resoultion pour changer la resolution d'affichage.
pour changer uniquement la resolution ça marche bien,
mais je voudrais mettre une fenetre qui permette eventuellement de refuser le changement de resolution...

mon probleme : je sais pas quoi mettre pour faire un retour en arriere si la modification est refusée.

pour etre plus clair voila où j'en suis avec mon bouton :

Debug.Assert(SetResolution(800, 600, 32))

Dim result
As MsgBoxResultresult = MsgBox("Voulez-vous conserver cette résolution ?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Résolution d'écran")

If result = MsgBoxResult.Yes
Then Debug.Assert(SetResolution(800, 600, 32))

If result = MsgBoxResult.No
Then  ????

Donc, c'est au niveau des points d'interrogations que je bloque.
sur le principe je pense qu'il faudrait "lire" la resolution actuelle avant le changement et donc, la remettre en place si on clique sur "Non",
mais j'ai besoin d'aide pour codé ça (débutant inside)
merci d'avance

9 réponses

Utilisateur anonyme
19 janv. 2007 à 13:46
Salut,

Tu récupére la taille avec
System.Windows.Forms.Screen.PrimaryScreen.Bounds






__________
Kenji
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
19 janv. 2007 à 14:00
Je dirais simplement (et ce quel que soit le langage de développement utilisé) :l on ne touche pas à la résolution d'un écran client (même si l'on prend toutes les précautions du monde pour la restituer in fine.... et même si on prévoit un programme de restauration lancé en runonce en cas d'interruption brutale...) JAMAIS ! .... Ne serait-ce que parce que le client a quand même le droit d'ouvrir, s'il le veut, une autre application, sans interrompre la votre,   .... NON ???.

Je rappelle qu'il existe sur le marché, pour des prix oscillants entre 27 et 100 euros en fonction des performances, des ocx adéquats ...
0
Tyrell2 Messages postés 251 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 2 novembre 2010
19 janv. 2007 à 14:51
t'es enervé ou quoi ???

en tout cas t'as rien compris au problème...

dans ma boite les postes XP sont en domaine et verrouillés de sorte que les utilisateurs n'ont pas acces à la fenetre des parametres d'affichage windows (resolution / frequence / couleurs...) pour eviter qu'ils fassent n'importe quoi .

alors je cherche juste à leur developper un petit truc en VB avec 3 icones qui leur permettraient uniquement de changer la resoultion pour ceux qui preferent le 1024x768 au 800x600 qui est trop gros (à mon gout) mais qui est la resolution par defaut sur notre station de reference.

alors qu'est ce que tu viens me parler d'ouvrir une autre application sans interrompre la mienne ? et de pas toucher à la resolution d'un ecran client ?  t'as vraiment rien compris !

maintenant que tu vois mieux mon probleme (qui est d'apporter un peu plus de confort aux utilisateurs), t'as pas une idée ?
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
19 janv. 2007 à 18:26
C'est tout ?
Tu a dit plus heut que tu savais déjà changer la résolution .

Je pense donc que tu sais également lire la résolution présente (au départ)

Mécanisme simple, donc :

Utiliser une variable globale resorig pour y garder en mémoire la résolution originelle.

Si refus et décision de retour en arrière, donc :
Lire ce que contient cette variable et l'utiliser pour rétablir la résolution telle qu'elle était !

C'est du super fastoche !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
19 janv. 2007 à 18:30
Une inquiétude, toutefois .... (et ne le prens pas mal, s'il te plait)

Dans ton code de modification de résolution : quelles précautions as-tu prises pour vérifier que cette résolution était acceptable sur la machine cliente ? (c'est un point souvent oublié et je ne serai pas le seul à te dire qu'il peut y avoir un risque sérieux d'endommagement de l'écran, dans certains cas de figure...). Mais je pense que Casy va venir te dire la même chose !
0
Tyrell2 Messages postés 251 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 2 novembre 2010
20 janv. 2007 à 09:18
certainement du super fastoche pour toi,
mais malheureusement pas pour moi encore...

je debute avec V.net 2003 et j'avous (honteusement...) pour le moment avancer plus à partir des codes disponibles sur le web (ici entre autre) que de ma propre prose

ça viendra bien à force je pense...

sinon j'ai n'ai effectivement rien qui verifie la compatibilité de la résolution proposée avec l'ecran sur lequel le code serait exécuté. si t'as une idée, j'achete ! merci.
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
20 janv. 2007 à 09:35
Pour ce qui est de la vérification de cette compatibilité, on y viendra lorsque le moment sera venu !

Concentre-toi d'abord, s'il te plait sur la codification du mécanisme simple que je t'ai indiqué plus haut...

Que tu aies l'habitude de "avancer plus à partir des codes disponibles sur le web (ici entre autre) que de ma propre prose " ne doit pas de dispenser, bien au contraire, de tenter d'en écrire, du code.... et ce mécanisme demande des connaissances de base plus qu'élémentaires !

Si tu ne sais pas faire du "si peu", une question : quattends-tu de ce forum ? qu'il écrive à ta place ce que, ne l'ayant pas "trouvé ailleurs", tu souhaites obtenir afin de te contenter d'un copier-coller ? ce n'est pas la vocation de ce forum (de développeurs).

Reviens nous voir après avoir appris ce qu'est une variable globale, comment y stocker des valeurs, comment les récupérer de cette variable. C'est tout ce dont tu as besoin puisque, ayant récupéré ces valeurs, le reste serait rigoureusement identique à ce que tu as déjà copié-collé, à savoir : passage de ces valeurs à ta fonction de changement de résolution de l'écran !
0
Tyrell2 Messages postés 251 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 2 novembre 2010
20 janv. 2007 à 10:09
capito !

j'vais avoir besoin de quelques jours pour avancer ... mais merci deja pour ça ! (le ton est un peu trop "paternel" mais je suis d'accord à 100%)

A+ donc
0
Tyrell2 Messages postés 251 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 2 novembre 2010
20 janv. 2007 à 10:24
ps : d'ailleurs ce sujet aurais mieux trouvé sa place dans la catégorie "débutants"
si un modo veut bien le deplacer pour moi svp...
0
Rejoignez-nous