begin process at 2010 02 10 11:01:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Windows

 > 

API

 > 

pb avec PostMessage et ShowWindow


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb avec PostMessage et ShowWindow

mercredi 29 novembre 2006 à 22:31:15 | pb avec PostMessage et ShowWindow

breton51

Bonjour voila mon pb est le suivant

je liste les fenêtres ouvertes avec EnumWindows je filtre les hwnd comme suit

Ret = GetWindowTextLength(hwnd)
titre = Space(Ret)
GetWindowText(hwnd, titre, Ret + 1)
If IsWindowVisible(hwnd) And GetWindowLong(hwnd, -8) = 0 And titre <> "" Then

jusque la pas de pb je récup bien les hwnd et les noms de mes fenêtres

le pb est le suivant:
j'ouvre plusieurs PowerPoint(2)
j'obtiens deux hwnd de fenêtre qui on pour titre ceux de mes fichiers
hwnd1           mon_fichier.ppt
hwnd2           mon_fichier2.ppt
j'obtiens aussi 1 hwnd qui a pour titre Microsoft PowerPoint + le nom du fichier actif
hwnd3           Microsoft PowerPoint - [mon_fichier.ppt]
         ou         Microsoft PowerPoint - [mon_fichier2.ppt]


ce que je peux faire c'est
agrandir mes fenêtre en faisant
ShowWindow(hwnd1, SW_SHOWNORMAL)
ShowWindow(hwnd2, SW_SHOWNORMAL)
ou
ShowWindow(hwnd3, SW_SHOWNORMAL)

minimiser mes fenêtres uniquement avec
ShowWindow(hwnd3, SW_SHOWMINNOACTIVE)

fermer mes fenêtres avec
PostMessage(hwnd3, W_KILL, 0, 0)

je ne peut pas fermer une seul fenêtre car quand je fait
PostMessage(hwnd1, W_KILL, 0, 0)
ou
PostMessage(hwnd2, W_KILL, 0, 0)
je quitte uniquement les icônes des fenêtres de la barre des taches et non les fenêtres PowerPoint

le pb est pire avec les documents pdf car la je ne peut même pas afficher  la fenêtre que je désir
en effet je peut uniquement utiliser les fonctions PostMessage et ShowWindow sur la fenêtre mère et donc je ne peut pas choisir le document a afficher

n'importe quel aide sera le bien venu merci d'avance

jeudi 30 novembre 2006 à 10:24:14 | Re : pb avec PostMessage et ShowWindow

Drikce06

Membre Club
Salut, passe par ces API:

'mettre la fenêtre au premier plan
Declare Function SetForegroundWindow Lib "user32" Alias "SetForegroundWindow" (ByVal hwnd As Integer) As Integer

'fermer la fenêtre
Declare Function CloseWindow Lib "user32" Alias "CloseWindow" (ByVal hwnd As Integer) As Integer

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
jeudi 30 novembre 2006 à 11:09:58 | Re : pb avec PostMessage et ShowWindow

breton51

Merci pour ta reponce Drikce06 mais Setforegroundwindow et closewindow ne marche pas je vois bien un changemant d'etat sur les icone des fenetres en barre des taches mais les fenetres (toutes les fenetres,explorer,internet,ppt,pdf....)  ne s'affiche pas  ou ne se ferme pas.
jeudi 30 novembre 2006 à 11:17:18 | Re : pb avec PostMessage et ShowWindow

Drikce06

Membre Club
Si tu fais CloseWindow(hwnd3) ça ferme pas powerpoint?

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
jeudi 30 novembre 2006 à 15:45:07 | Re : pb avec PostMessage et ShowWindow

breton51

Ci cela ferme bien PowerPoint (mais c'est pas a tous les coûts). De plus je ne peux toujours pas, dans le cas où j'ai deux powerpoints ouvert, fermer uniquement une des doc PowerPoint. Et c'est cela que je veux faire.
De plus avec les document plus il m'est toujours impossible d'afficher le document que je veux. Seul le dernier document dans hwnd3 est affichable par api je ne peut pas charger la page hwnd ou hwnd2 dans hwnd3.

jeudi 30 novembre 2006 à 15:48:37 | Re : pb avec PostMessage et ShowWindow

breton51

Complément sur le dernier post

dans le deuxième paragraphe c'est des document "pdf'"  et non "plus" que je veux parlé.

jeudi 30 novembre 2006 à 15:49:35 | Re : pb avec PostMessage et ShowWindow

Drikce06

Membre Club
Pour ce qui est des documents utilise EnumMdiChild mais .Net il me semble que tu ne pourra pas l'utiliser!

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:


Cette discussion est classée dans : pb, titre, showwindow, hwnd, fenêtres


Répondre à ce message

Sujets en rapport avec ce message

PB avec 2000-XP [ par Apodemus ] 2 pb en faitun pas trop grave:un flexgrid avec une colonne colwidth=0 est invisible sous Winxx,c'est ce que je veux, mais pas sous XP-2000 (quelques p pb de focus [ par goth ] j'ai une appli (XWIN32) en fullscreen.j'ai une autre appli (un timer) qui lance une autre appli (genre word) tte les x secondes.Or impossible de faire Connaitre le nom d'executable d'une application qui tourne [ par l0st3d ] Salutje vais etre clair dans ma questionj'utilise la commande qui suit pour listé les programmes actif sous winowsPublic Sub ProcessList() Dim Vba petit pb [ par kisscool2 ] Bonjour a tous!Je debute total, Je Travail sous Accessg une table Livre avec un champ Titre ,j'ai crée un formulaire ds lequelil y a une textbox ,qui Obtenir les noms des fenêtres dans la barre des tâches (partiellement résolu) [ par fauve ] Salut,Voilà mon soucis, j'ai reussi à faire un petit programme qui me liste les noms des fenêtres ouvertes et qui apparaissent dans la barre des tâche Pb pour clipboard excel [ par dodo1309 ] Bonsoir,Depuis excel je dois scanner un fichier et l'enregistrer sur le dique. pour scanner j'utilise   Dim hwnd As Longhwnd = FindWindowA("Thunder" & pb ' dans requête [ par phoenix91720 ] Bonjour,J'ai un petit soucis... je développe actuellement une petite application me permettant de gérer tous mes DVD et le problème survient lorsqu'il Lister les Handles des applications ouvertes [ par dedenet2 ] Bonjour,Je cherche à faire fonctionner un programme qui liste les handles de toutes les applications ouvertes.N'etant pas spécialistes des "API" ,je c ShellExecute, pb avec hwnd [ par stephvb62 ] Salut tout le monde, j'ai trouvé sur le net une méthode pour ouvrir tout type de fichier depuis mon programme vb: Le Pb est que je recois une erreur Mettre au premier plan avec SetForegroundWindow, SetFocus, et ShowWindow [ par Wlad69 ] Bonjour,Je veux qu'à intervalle régulier Access vienne s'afficher au premier plan (au dessus de tous les autres application).En VBA (Access 2000), sur


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales