Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1147 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Comment detecter qu'une fenetre à été reduite ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment detecter qu'une fenetre à été reduite ?

n°311685
_maximus_
Goret ptit con ^_^
Posté le 17-02-2003 à 23:37:00  profilanswer
 

Bonjour,
 
ben voila j'essaie depuis une heure d'intercepter le code de l'event qui correspond a la reduction d'une fenetre mais malgré que j'affiche tout les message recu ( y en a une chiee ) c tres difficile de trouver le bon code, jai chercher sur google des listes de ces fameux Messages mais j'ai rien trouvé de concret...
 
connaissez vous un site ou son répertorié toutes les constantes correspondant aux evenements windows ?  
j'ai regardé dans msdn rien non plus ( enfin aps gd chose )  
 
Merci d'avance !!!


Message édité par _maximus_ le 18-02-2003 à 00:46:38

---------------
Ptit con de goret je t'emmerde ^_^
mood
Publicité
Posté le 17-02-2003 à 23:37:00  profilanswer
 

n°311702
gatorette
Posté le 18-02-2003 à 01:07:52  profilanswer
 

Je pense que tu veux parler du message WM_SIZE, non ?
 
http://msdn.microsoft.com/library/ [...] m_size.asp


---------------
each day I don't die is cheating
n°311707
_maximus_
Goret ptit con ^_^
Posté le 18-02-2003 à 01:26:21  profilanswer
 

gatorette a écrit :

Je pense que tu veux parler du message WM_SIZE, non ?
 
http://msdn.microsoft.com/library/ [...] m_size.asp


 
 [:mlc]  
 
arf tu me sauves !!!! Evidement j'avais pas regardé les paramettre wparam lparam ! Rah Merci bcp ...


---------------
Ptit con de goret je t'emmerde ^_^
n°311718
_maximus_
Goret ptit con ^_^
Posté le 18-02-2003 à 01:45:30  profilanswer
 

Prob...  
 
 
Si j'affiche la valeur de WM_SIZE il me sort k'elle est vide !  :heink:  
 
j'ai coché le composant activeX plugin  :heink:  
 
si j'ecris wm_size en minuscule il me la met en majuscule donc c kil la reconnait  :heink:  
 
Alros pq elle est vide ?  :heink:  grrr :/ comrpend pu rien :'(


---------------
Ptit con de goret je t'emmerde ^_^
n°311720
gatorette
Posté le 18-02-2003 à 01:55:24  profilanswer
 

Je peux pas t'aider plus car je connais vraiment mal Visual Basic. Peut être que si tu donnais un peu plus d'explication...
 
J'ai fait un essai rapide avec VB .NET et apparemment traîter l'événement SizeChanged de ma forme principale, ça a l'air de marcher.


---------------
each day I don't die is cheating
n°311722
MagicBuzz
Posté le 18-02-2003 à 02:07:06  profilanswer
 

_Maximus_ a écrit :

Bonjour,
 
ben voila j'essaie depuis une heure d'intercepter le code de l'event qui correspond a la reduction d'une fenetre mais malgré que j'affiche tout les message recu ( y en a une chiee ) c tres difficile de trouver le bon code, jai chercher sur google des listes de ces fameux Messages mais j'ai rien trouvé de concret...
 
connaissez vous un site ou son répertorié toutes les constantes correspondant aux evenements windows ?  
j'ai regardé dans msdn rien non plus ( enfin aps gd chose )  
 
Merci d'avance !!!


 
on_resize
 
et il faut tester si windowState = vbMinimized
 
-- Edit : :heink: T'ain chuis crevé moi... J'aurai juré avoir lu que ct en VB le problème :??: Vais me coucher :D --
 
-- Re-Edit : Ha ! Si ! C'est la cat du topic :D Bon, ben alors franchement, ma solution est la plus simple... Une fenbêtre ne peux pas être redimensionnée quand elle est minimisée, donc le truc que j'ai donné que peut que fonctionner, et c'est autrement plus simple que d'épelucher les API ou autres joyeusetés... --


Message édité par MagicBuzz le 18-02-2003 à 03:44:57
n°311732
HelloWorld
Salut tout le monde!
Posté le 18-02-2003 à 03:18:01  profilanswer
 

Citation :

Si j'affiche la valeur de WM_SIZE il me sort k'elle est vide !  :heink:  
 
j'ai coché le composant activeX plugin  :heink:  
 
si j'ecris wm_size en minuscule il me la met en majuscule donc c kil la reconnait  :heink:  
 
Alros pq elle est vide ?  :heink:  grrr :/ comrpend pu rien :'(


 
Ta fenêtre reçoit WM_SIZE une fois qu'elle a été minimisée.
Une fois minimisée, sa largeur et sa hauteur sont nulles ...
Intercepte plutôt SC_MINIMIZE de WM_SYSCOMMAND, qui est généré quand l'utilisateur demande à la fenêtre de se minimiser.
Elle ne l'est pas encore. C'est le bon moment pour récupérer ses dimensions.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°311872
_maximus_
Goret ptit con ^_^
Posté le 18-02-2003 à 11:35:33  profilanswer
 

HelloWorld a écrit :

Citation :

Si j'affiche la valeur de WM_SIZE il me sort k'elle est vide !  :heink:  
 
j'ai coché le composant activeX plugin  :heink:  
 
si j'ecris wm_size en minuscule il me la met en majuscule donc c kil la reconnait  :heink:  
 
Alros pq elle est vide ?  :heink:  grrr :/ comrpend pu rien :'(


 
Ta fenêtre reçoit WM_SIZE une fois qu'elle a été minimisée.
Une fois minimisée, sa largeur et sa hauteur sont nulles ...
Intercepte plutôt SC_MINIMIZE de WM_SYSCOMMAND, qui est généré quand l'utilisateur demande à la fenêtre de se minimiser.
Elle ne l'est pas encore. C'est le bon moment pour récupérer ses dimensions.


 
En fait ce que je voulais dire c'est que la constante WM_SIZE n'avait pas de valeur ! C'est ca que je comprend pas... la j'ai passer des heures a chercher c t kwa ca valeur pour enfin trouver que c t 5 :/
mais pq elle n'ont pas de valeur quand je les declare pas moi meme ?  C parfois zarb la prog sous vb...
 
ou puis je trouver la liste des VALEUR de toutes ces constante puisque mr. VB veut pas me les donner :)
 
ca me serait bien utile, et sur google a part trouver des site qui enonce juste le nom de ces constantes et a quoi elles correspondent j'en ai trouvé aucun qui dit la valeur exacte de ces constantes...  
 
merci


---------------
Ptit con de goret je t'emmerde ^_^
n°311886
drasche
Posté le 18-02-2003 à 11:47:18  profilanswer
 

ben ouais ils te causent tous C++ et la sous-cat c'est VB (je prends le topic un peu tard, la sous-cat a changé?)
 
Si on cause VB, c'est la solution de MagicBuzz qui est la bonne.
 
Tu dois avoir du code dans ta form qui ressemble à ça:
 


Private Sub Form_Resize()
  If WindowState = vbMinimized then
    ' La form a été réduite
  End If
End Sub


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°311907
MagicBuzz
Posté le 18-02-2003 à 12:14:14  profilanswer
 

drasche a écrit :

ben ouais ils te causent tous C++ et la sous-cat c'est VB (je prends le topic un peu tard, la sous-cat a changé?)
 
Si on cause VB, c'est la solution de MagicBuzz qui est la bonne.
 
Tu dois avoir du code dans ta form qui ressemble à ça:
 


Private Sub Form_Resize()
  If WindowState = vbMinimized then
    ' La form a été réduite
  End If
End Sub




 
A savoir aussi que VB conserve dans les propriétés height et width de la form sa taille avant réduction, donc elle n'est pas à 0 quand c'est réduit. (du moins, il me semble, faudrait que je re-teste pour vérifier)

mood
Publicité
Posté le 18-02-2003 à 12:14:14  profilanswer
 

n°311914
gatorette
Posté le 18-02-2003 à 12:19:45  profilanswer
 

drasche a écrit :

ben ouais ils te causent tous C++ et la sous-cat c'est VB (je prends le topic un peu tard, la sous-cat a changé?)


 
Non la sous-cat n'a pas changé, mais j'ai essayé de répondre avec mes connaissances en espérant que ça ferait avancer le schmilblick. Mais n'ayant pas de connaissances en VB, je pouvais pas faire beaucoup plus.


---------------
each day I don't die is cheating
n°311936
drasche
Posté le 18-02-2003 à 12:44:26  profilanswer
 

gatorette a écrit :


Non la sous-cat n'a pas changé, mais j'ai essayé de répondre avec mes connaissances en espérant que ça ferait avancer le schmilblick. Mais n'ayant pas de connaissances en VB, je pouvais pas faire beaucoup plus.


VB est par trop différent des autres langages/environnements de développement.  Il n'est malheureusement pas aware de l'existence de windows.h et de ses petits frères :/


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°311951
_maximus_
Goret ptit con ^_^
Posté le 18-02-2003 à 13:07:01  profilanswer
 

drasche a écrit :

ben ouais ils te causent tous C++ et la sous-cat c'est VB (je prends le topic un peu tard, la sous-cat a changé?)
 
Si on cause VB, c'est la solution de MagicBuzz qui est la bonne.
 
Tu dois avoir du code dans ta form qui ressemble à ça:
 


Private Sub Form_Resize()
  If WindowState = vbMinimized then
    ' La form a été réduite
  End If
End Sub



 
Ben avant de vouloir faire ca en capturant le msg de l'event j'avai fait comme ca mais pour une raison inconnue ca foirait parfois dans le cadre de mon appli aller comprendre pq :/ bref mon prob c bon je l'ai resolu, mais je v avoir besoin de detecter des events qui ne sont pas defini par defaut comme Form_resize et les constantes qui y font reference sont vide, donc ma question maintenant est comment resoudre ce prob , et / ou ou puis-je trouver une liste des valeur qu'on ces  constantes !  
 
Merci tout le monde :)
 


Message édité par _maximus_ le 18-02-2003 à 13:07:37

---------------
Ptit con de goret je t'emmerde ^_^
n°311977
drasche
Posté le 18-02-2003 à 13:48:44  profilanswer
 

Si tu parles des constantes WM_quelquechose, oublie.  Ces constantes sont définies dans le SDK Win32 mais VB n'en a nul besoin, et vbMinimized est défini dans la bibliothèque de VB.  Tu peux la retrouver dans l'object browser (appuie sur F2 pour l'obtenir).
 
En cas de doute, rajoute un Option Explicit au début de ta form, et lance toujours ton application via l'option "Start with full compile" (raccourci Ctrl-F5).  Avec ça tu sauras toujours si ton programme dispose bien de tout ce dont il a besoin au niveau déclarations variables, constantes, etc)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°311987
_maximus_
Goret ptit con ^_^
Posté le 18-02-2003 à 14:04:47  profilanswer
 

drasche a écrit :

Si tu parles des constantes WM_quelquechose, oublie.  Ces constantes sont définies dans le SDK Win32 mais VB n'en a nul besoin, et vbMinimized est défini dans la bibliothèque de VB.  Tu peux la retrouver dans l'object browser (appuie sur F2 pour l'obtenir).
 
En cas de doute, rajoute un Option Explicit au début de ta form, et lance toujours ton application via l'option "Start with full compile" (raccourci Ctrl-F5).  Avec ça tu sauras toujours si ton programme dispose bien de tout ce dont il a besoin au niveau déclarations variables, constantes, etc)


 
Ok tkx , mais comment je fais pour voir uniquement les constantes qui corresponde aux messages envoyé au prog?


---------------
Ptit con de goret je t'emmerde ^_^
n°311989
drasche
Posté le 18-02-2003 à 14:12:37  profilanswer
 

_Maximus_ a écrit :


 
Ok tkx , mais comment je fais pour voir uniquement les constantes qui corresponde aux messages envoyé au prog?


Tu ne peux pas.  Dans la mesure ou la fonction Form_Resize ne donne pas de paramètre, tu dois tester par toi même les propriétés de ta form et implémenter ce qu'il faut pour savoir ce qui a changé par rapport au précédent appel [:spamafote]
 
Quant aux constantes, elles sont toujours toutes là.  Tu pourrais n'en afficher qu'une partie via l'identifiant de l'énumérateur auquel appartient vbMinimized mais WindowsState est déclaré Integer.  Tu peux rechercher vbMinimized dans l'object browser pour retrouver son énumérateur.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Comment detecter qu'une fenetre à été reduite ?

 

Sujets relatifs
Passer une variable d'une fenêtre à une autredetecter une tabulation dans un fichier txt
[PHP] détecter le depassement du temps max d'execution de script[MFC] Comment savoir si une fenêtre MDI est partiellement visible ???
[vb] detecter une erreurURL dans une nouvelle fenêtre et HTML 4.01 strict
[C++Builder] Détecter si un programme (.exe) est déja lancé ? (code?)[Win] Comment rafraichir la fenêtre?
impossiblilité de maximiser la fenetrequestion gestion de fenetre
Plus de sujets relatifs à : Comment detecter qu'une fenetre à été reduite ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR