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

C# Discussion :

openFileDialog centrage ?


Sujet :

C#

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2011
    Messages : 107
    Points : 66
    Points
    66
    Par défaut openFileDialog centrage ?
    Bonjour,

    Je n'arrive pas à centré (positionner) le dialogue "openFileDialog" au centre de l'écran.

    Je ne vois pas comment faire.

    si vous avez une idée merci d'avance de votre aide.

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2011
    Messages : 107
    Points : 66
    Points
    66
    Par défaut
    Je viens de tester ce que vous m'avez indiqué:

    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
    31
    32
    33
    34
    35
     
    // API Windows
    [DllImport("user32.dll", EntryPoint = "FindWindow", SetLastError = true)]
    static extern IntPtr FindWindowByCaption(IntPtr ZeroOnly, string lpWindowName);
    [DllImport("user32.dll", EntryPoint = "SetWindowPos")]
    public static extern IntPtr SetWindowPos(IntPtr hWnd, int hWndInsertAfter, int x, int Y, int cx, int cy, int wFlags);
     
    private void button1_Click(object sender, EventArgs e)
    {
         // Afficher OpenDialogFile1 en le centrant
         // openFileDialog1 créé dans le concepteur            
         int choixMethode = 2;
         if (choixMethode == 1)
         {
               // Méthode 1
               openFileDialog1.Title = "Ouvrir";
               IntPtr window = IntPtr.Zero;
               while (window == IntPtr.Zero)
                    window = FindWindowByCaption(IntPtr.Zero, "Ouvrir");  // Capture impossible
               const int SWP_NOSIZE = 0x0001;
               SetWindowPos(window, 0, 500, 200, 0, 0, SWP_NOSIZE);
         }
         else
         {
               // Méthode 2
               Form PositionForm = new Form();
               PositionForm.StartPosition = FormStartPosition.Manual;
               PositionForm.Left = 500;
               PositionForm.Top = 40;
               PositionForm.FormBorderStyle = FormBorderStyle.None;
               PositionForm.Visible = false;
               PositionForm.Show();
               openFileDialog1.ShowDialog();
         }
     }
    La méthode 1 n'arrive pas a accroché l'instance openFileDialog1 (boucle infini) !

    La méthode 2 positionne l'origine de openDialog1 à la bonne position, n'est il est impossible de centrer le openFileDialog1 car les champs Width et Heigth sont inaccessibles, pour faire un positionnement précis (centrage)!

    Si vous avez une autre idée, car je ne vois pas la solution dans l'immédiat.
    Merci d'avance...

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2011
    Messages : 107
    Points : 66
    Points
    66
    Par défaut
    Oups, j'ai mal écrit la méthode 2, il faut écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    openFileDialog1.ShowDialog(PositionForm); // et non openFileDialog1.ShowDialog();
    ...

Discussions similaires

  1. [VB.NET] Centrage text
    Par Emcy dans le forum Windows Forms
    Réponses: 2
    Dernier message: 03/08/2004, 09h24
  2. [débutant][JSplitPane] Centrage des composants
    Par gcore dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 17/06/2004, 19h11
  3. [swing]Centrage du texte d'un JTextArea
    Par Lezoul dans le forum Composants
    Réponses: 3
    Dernier message: 15/06/2004, 15h07
  4. [C#] OpenFileDialog en Remoting
    Par MarkoImDe dans le forum Windows Forms
    Réponses: 6
    Dernier message: 03/06/2004, 17h44
  5. [VB.NET] OpenFileDialog renvoyer un repertoire ?
    Par hirochirak dans le forum Windows Forms
    Réponses: 7
    Dernier message: 25/05/2004, 10h55

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