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

Windows Forms Discussion :

[C#] Deplacer automatiquement une fenetre donnée lors de son ouverture


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 10
    Points : 10
    Points
    10
    Par défaut [C#] Deplacer automatiquement une fenetre donnée lors de son ouverture
    Bonjour,

    Je débute et ma question rejoint celle concernant la fonction FindWindow : je cherche à faire une petite application console qui lors de l'ouverture d'une fenetre windows donnée va automatiquement la placer à un endroit donné. Je ne trouve pas les fonction .net qui permettent de manipuler les fenêtres windows : (FindWindow ??, MoveWindow ??, via un handler ??....).
    Si qqun à un indice svp.... Merci

  2. #2
    Membre régulier Avatar de Davide
    Profil pro
    Inscrit en
    Août 2003
    Messages
    80
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2003
    Messages : 80
    Points : 84
    Points
    84
    Par défaut
    L'utilisation des API windows gérant les fenêtres sous .NET..
    Tu trouveras moultes exemples sur le net..

    Mais si tu débutes c'est peut-être pas le plus intéressant à voir.. je dirais que comprendre et détenir les bases de dotnet avant de s'attaquer à cela est plus intéressant..
    ______________________

    DaViDe

  3. #3
    Membre régulier Avatar de netomin
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Points : 102
    Points
    102
    Par défaut
    Tu peux utiliser la fonction FindWindows de l'APi Win32
    Voici un bout de code en VB que je trouvé sur le web:
    tu déclare une variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    Private hWndApp As IntPtr = IntPtr.Zero
    
    Tu déclare cette fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    PublicSub CapturerApp(ByVal titulo AsString)
    ' Capture la fenêtre avec le nom indiqué et l'insere dans un panel de mon form
    hWndApp = WinApi.FindWindow(Nothing, proc.MainWindowTitle)
    
    If hWndApp.ToInt32 > 0 Then ' Si la fenêtre est ouverte la valeur doit être >0
    WinApi.MoveWindow(hWndApp, 0, 0, Me.PanelApp.Bounds.Width - 4, Me.PanelApp.Bounds.Height - 4, 1)
    WinApi.SetParent(hWndApp, Me.PanelApp.Handle)
    Else
    hWndApp = IntPtr.Zero
    Close()
    EndIf
    EndSub
    
    Et après tu n'a qu'appeller la fonction comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    CapturerApp(proc.MainWindowTitle)
    
    J'avais déclaré un process pour lancer la fenetre que je voulais deplacer:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    Dim proc AsNew Process
    
    Mais si tu veux deplacer une fenetre dejà ouverte tu dois juste connaître son nom et mettre le nom a la place de proc.MainWindowTitle.

    J'espere que cela va te donner une idée.

    @ +
    Il y a toujours une réponse, il suffit de la trouver.

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 10
    Points : 10
    Points
    10
    Par défaut
    Merci bcp, je vais regarder ça.

Discussions similaires

  1. Réponses: 3
    Dernier message: 31/10/2007, 21h48
  2. Réponses: 5
    Dernier message: 11/05/2006, 21h39
  3. Réponses: 8
    Dernier message: 31/03/2006, 11h17
  4. Réponses: 14
    Dernier message: 17/11/2005, 17h16
  5. Dimensionner automatiquement une fenetre
    Par ch5oun dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 20/04/2005, 15h18

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