IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Mettre des fenêtres en premier plan


Sujet :

VB 6 et antérieur

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 9
    Points
    9
    Par défaut Mettre des fenêtres en premier plan
    Salut,
    je voudrai savoir s'il y a une fonction qui permet de mettre des fenêtres qui contiennent des pages web (non des forms vb) en premier plan.

    Merci d'avance

  2. #2
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 332
    Points : 718
    Points
    718
    Par défaut
    salut,

    je voudrai savoir s'il y a une fonction qui permet de mettre des fenêtres qui contiennent des pages web (non des forms vb) en premier plan.
    tu fais du vb ou pas?
    Xavier

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 9
    Points
    9
    Par défaut
    bien sur que je fais du vb, je voudrai à partir d'une application vb mettre des fenêtres non vb (pages HTML...) en premier planet en derrière plan.

  4. #4
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 332
    Points : 718
    Points
    718
    Par défaut
    il existe un API qui fait ce genre de choses.

    Fonction SetWindowPos

    Declare Function SetWindowPos Lib "user32" Alias "SetWindowPos" ( _
    ByVal hwnd As Long, _
    ByVal hWndInsertAfter As Long, _
    ByVal x As Long, _
    ByVal y As Long, _
    ByVal cx As Long, _
    ByVal cy As Long, _
    ByVal wFlags As Long) As Long


    Description :
    Cette API permet d'afficher la fenêtre où bon vous semble sur
    l'écran en exécutant une méthode du type move avec la possibilité de laisser la feuille toujours au premier plan d'affichage.
    hwnd est le handle de la feuille,
    hWndInsertAfter est une des contantes définies ci-dessous,
    X, Y, cx et cy sont respectivement les coordonnées et les dimensions de l'image.
    wFlags est une combinaison de constantes ci-dessous.

    Constante Valeur Définition
    HWND_BOTTOM 1 Place la fenêtre en dessous de toutes les autres.
    HWND_NOTOPMOST -2 Place la fenêtre au dessus de toutes les fenêtres qui n'ont pas l'attribut "TOPMOST" (et en dessous de ces dernières).
    HWND_TOP 0 Place la fenêtre au premier niveau.
    HWND_TOPMOST -1 Place la fenêtre au premier niveau, celle-ci conserve cet attribut même lorsqu'elle perd le focus.
    SWP_HIDEWINDOW &H80 Cache la fenêtre.
    SWP_NOACTIVATE &H10 N'active pas la fenêtre.
    SWP_NOMOVE &H2 Garde la même position (les paramètres X et Y ne sont pas pris en compte).
    SWP_NOSIZE &H1 Conserve les dimensions courantes (paramètres cx et cy pas pris en compte).
    SWP_SHOWWINDOW &H40 Affiche la fenêtre.
    Xavier

  5. #5
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 9
    Points
    9
    Par défaut
    et si la page que je voudrai mettre en premier plan est une page HTML
    comment on pourra utiliser cette fonction que tu m'as donné,
    merci pour tes réponses

  6. #6
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 332
    Points : 718
    Points
    718
    Par défaut
    très bonne question. Attends un peu, je cherche.
    Xavier

  7. #7
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 332
    Points : 718
    Points
    718
    Par défaut
    une question: qu'est censée faire ton appli exactement?
    Xavier

  8. #8
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 9
    Points
    9
    Par défaut
    bon quand je travaille avec mon appli j'ai 2 pages html ouvertes, je voudrai grace à un bouton dans mon appli permuter entre ces 2 pages en premier plan.
    Merci

  9. #9
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 332
    Points : 718
    Points
    718
    Par défaut
    je sais pas si ça peut marcher, mais si tu connais le nom des processus associés aux fenêtres HTML, tu peux peut-être, lors d'un clic sur le bouton rechercher le process qui correspond et mettre au premier plan.
    Xavier

  10. #10
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 9
    Points
    9
    Par défaut
    Oui mais comment mettre un process en premier plan?

  11. #11
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 332
    Points : 718
    Points
    718
    Par défaut
    fais déjà une recherche sur le forum pour savoir comment récupérer un processus. On verra la suite après.

    Je regarde de mon côté.
    Xavier

  12. #12
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 9
    Points
    9
    Par défaut
    je sais comment obtenir la liste des process mais par contre je suis en train de chercher comment obtenir la liste des fenêtres ouvertes sur windows, ca sera bien encore
    Merci bcp pour ton aide

  13. #13
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 332
    Points : 718
    Points
    718
    Par défaut
    pour t'éclairer: je me suis un jour posé la question:

    http://www.developpez.net/forums/arc.../t-115187.html
    Xavier

  14. #14
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 9
    Points
    9
    Par défaut
    quelle était la conclusion?

  15. #15
    Membre éclairé
    Avatar de Asdorve
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 332
    Points : 718
    Points
    718
    Par défaut
    la conclusion, c'est que tout le code qu'il y a en bas permet de récupérer le nom des process, le nom des appli associées, et de les enregistrer dans un fichier texte mis à jour régulièrement.

    Fouille un peu, tu trouveras ton bonheur.
    Xavier

  16. #16
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    zaza à la rescousse

    Bon, je tiens juste à spécifier que j'ai utilisé ce jeu d'API une Fois et cette fois là seulement, il y a un moment dèjà et que ma mémoire à parfois des ratées...

    Alors, j'envoie le dossier de mon projet à titre d'exemple.

  17. #17
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonjour

    si tu utilises Internet Explorer, tu peux tester cette procédure pour amener une fenetre IE au premier plan


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Option Explicit
     
    Private Declare Function BringWindowToTop Lib "user32" _
    (ByVal hwnd As Long) As Long
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
    (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
     
    Private Declare Function ShowWindow Lib "user32" _
    (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
     
    Const SW_SHOWNORMAL = 1
     
    Private Sub Command1_Click()
        'activer la référence "Microsoft Internet Controls"
        Dim IE As New InternetExplorer
        Dim winShell As New ShellWindows
        Dim x As Long
     
        On Error Resume Next
        For Each IE In winShell
            If IE.LocationURL = "http://www.developpez.com/" Then
                x = IE.hwnd
                Exit For
            End If
        Next IE
     
        BringWindowToTop x
        ShowWindow x, SW_SHOWNORMAL
     
    End Sub

    remarque:
    cela fonctionne aussi en VBA , à condition de ne pas lancer la procedure depuis l'editeur de macro




    bonne journée
    michel

Discussions similaires

  1. Réponses: 5
    Dernier message: 27/08/2007, 10h40
  2. [Débutant] Mettre une fenêtre au premier plan
    Par richard_sraing dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 07/06/2007, 11h02
  3. Réponses: 2
    Dernier message: 20/12/2006, 14h31
  4. Comment mettre une fenêtre au premier plan?
    Par damien99 dans le forum MFC
    Réponses: 11
    Dernier message: 30/08/2006, 11h37
  5. Mettre une fenêtre au premier plan
    Par Riko dans le forum Delphi
    Réponses: 4
    Dernier message: 20/06/2006, 19h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo