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 :

Modification de l'Interface par rapport au "PP P"


Sujet :

Windows Forms

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2006
    Messages : 45
    Points : 28
    Points
    28
    Par défaut Modification de l'Interface par rapport au "PP P"
    Bonjour à tous

    Je diffuse un projet en ce moment même, et certains clients ont un problème d'affichage.

    Le problème est le suivant:
    Si le client laisse le PPP à 100% (ou la loupe), il n'y a aucun problème. Les images, label, webbrowser, etc... sont bien placés.


    Mais si l'un des clients utilisent un PPP sous Vista/seven différent que 100%, l'interface change complètement. Les labels ne sont plus aux même endroit, tout est décalé.

    Y'a-t-il une solution pour éviter ça ?

    J'ai essayé avec "Locked", "MaximumSize", mais toujours le même soucis.

    Par avance, merci

    VS 2008
    VB.NET

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Août 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Août 2007
    Messages : 109
    Points : 129
    Points
    129
    Par défaut
    Bonjour,

    Comment à tu mis en place ton interface, as tu utilisé les ancres et le dockage des contrôles.

    Nous avons essentiellement utilisé ces deux principes ce qui nous as sauvé la mise dans ce cas.

    Attention toutefois à ne pas partir sur des tailles d'écran trop grandes, cas au moment de l'affichage chez le client le formulaire sera tronqué, et là il n'y as
    rien à faire.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2006
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    Citation Envoyé par romulus1206 Voir le message
    Bonjour,
    Comment à tu mis en place ton interface, as tu utilisé les ancres et le dockage des contrôles.
    Nous avons essentiellement utilisé ces deux principes ce qui nous as sauvé la mise dans ce cas.
    Attention toutefois à ne pas partir sur des tailles d'écran trop grandes, cas au moment de l'affichage chez le client le formulaire sera tronqué, et là il n'y as
    rien à faire.
    Hello Romulus,

    Pour être franc, je ne pense pas avoir utilisé les ancres ni le dockage (Ne sachant pas ce que c'est )
    La taille de l'IHM n'est pas grande (F_main principal en 100%= 680*523)

    Pour la mise en Forme:
    -Création d'une forme avec img en background
    -Ajour de label, webbrowser, panel (Cliqué/Déposé)
    -etc...
    Bref, les actions de base je dirais, sans modifications spécifiques.

    Peut tu me dire comment utiliser ses "Ancrages" ?

    Merci

    EDIT: Je viens de remarquer ses options, je vais faire mes tets Je tient informé de la suite.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Août 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Août 2007
    Messages : 109
    Points : 129
    Points
    129
    Par défaut
    Je vais essayer

    Il existe deux propriétés dans les contrôles :

    - Anchor (Ancre)

    - Dock (Parquer)

    Bien quand tu ancre un controle tu lui dit que sa position ne changera pas de celle ou il se trouve actuellement, ceci par rapport à un ou plusieurs bord de ton formulaire.

    exemple :

    J'ai une combobox que je désire fixer à 20px du haut et à 20 px de la droite du formulaire. Je la place à ce point et ensuite je l'ancre en donnant une ancre en haut et à gauche.


    Le Docking consiste à envoyer le controle en haut, à gauche, etc du fomulaire ou de le faire remplir l'espace entier.

    Pour bien placer tout cela je te conseille d'utiliser des panels pour regrouper test contrôles, ensuite tu docks tes panels, et normalement tout doit se tenir quelque soit la config de tes clients.

    NB: Lorsque tu dock des controles joue avec la mise au premier plan afin qu'il soit dans l'ordre que tu veux, en effet si tu dock un panel à gauche, un autre en haut et un troisieme en fill(Remplissage), afin que tout soit comme tu veux il faux mettre les panels gauche et haut au premier plan.

    Maintenant le mieux et que tu essaie par toi même et tu vas vite comprendre.

    NB 2 : J'espère que c'est clair, sinon pose des questions

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2006
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    Re-bonsoir

    Désolé Romulus, j'ai beau tout essayé je ne suis pas arrivé

    Du coup j'ai fais quelque chose d'horrible mais j'ai trouvé que cette solution

    Dans la fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub FormMain_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    de chaque form, je met la fonction ci-dessous:
    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
     
        Private Sub _InitilizeIHM()
            Me.Size = New Size(680, 523)
            Me.StartPosition = FormStartPosition.CenterScreen
            LB_aide.Size = New Size(20, 24)
            LB_aide.Location = New Point(46, 7)
            LB_aide.Font = New Font(LB_aide.Font.Name, 14.0F, Label1.Font.Style)
            PAN_reduce.Size = New Size(24, 22)
            PAN_reduce.Location = New Point(614, 5)
            PAN_close.Size = New Size(31, 29)
            PAN_close.Location = New Point(640, 0)
            CheckVersion.Size = New Size(47, 11)
            CheckVersion.Location = New Point(552, 11)
            CheckVersion.Font = New Font(CheckVersion.Font.Name, 8.0F, CheckVersion.Font.Style)
    Etc......
        End Sub
    C'est horrible, je dois me reprendre sur tous les labels, Panel etc... de chaque form

    Je laisse en suspend le Topic au cas s'il quelqu'un à trouvé une autre solution.
    Je le passe en Résolu demain soir sinon

  6. #6
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    moi je veux bien une capture de la transformation qui t'embete (plutot qu'une capture du menu pour changer les dpi de l'écran)

    sinon y a des controles containers qui sont spécialisés dans le placement et le redimensionnement (le mieux étant surement le tablelayoutpanel, mais on peut citer aussi flowlayoutpanel et splitcontainer)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2006
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    Citation Envoyé par Pol63 Voir le message
    moi je veux bien une capture de la transformation qui t'embete (plutot qu'une capture du menu pour changer les dpi de l'écran)
    sinon y a des controles containers qui sont spécialisés dans le placement et le redimensionnement (le mieux étant surement le tablelayoutpanel, mais on peut citer aussi flowlayoutpanel et splitcontainer)
    Hello Pol, désolé de répondre que maintenant.
    Je te fais dessuite en supprimant quelques images pour éviter de faire de la PUB.

    EDIT: Voilà, donc 1ere Img c'est quand le client n'a pas de problème d'affichage (100% PPP)


    Et là 2eme avec un PPP de 125%

  8. #8
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    on voit pas trop ce qui est controle et ce qui est image de fond
    sinon il faut utiliser dock et anchor (propriétés sur chaque controle) ou utiliser des containers comme le tablelayoutpanel

    en mettant 125% tout y compris la fenetre va etre agrandi, le tablelayoutpanel permet que chaque case et donc chaque controle va etre agrandi et "déplacé" en pourcentage aussi
    pour les images, il faut mettre l'imagelayout à zoom

    le tablelayoutpanel permet de définir des lignes et des colonnes, une case ne peut accueillir qu'un controle, par contre un controle peut utililser plusieurs cellules
    un controle qui est dans un tablelayoutpanel obtient des propriétés en plus
    column et row sont la colonne et la ligne où est affiché le controle
    columnspan et rowspan servent à définir le nombre de lignes et de colonnes que prennent le controle
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2006
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    Merci Pol
    Je suis entrain de le refaire entièrement (niveau utilisation des Form/Panel) et en rajoutant les panels que tu m'as conseillé.

    Tout marche niquel ! (Pour le moment )
    Je met le problème en Résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. WPF et modification interface par un autre thread comme les WF ?
    Par Yogy dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 04/03/2009, 17h04
  2. Réponses: 4
    Dernier message: 23/01/2008, 11h06
  3. Modif de date par rapport à l'heure système
    Par froutloops62 dans le forum VBA Access
    Réponses: 3
    Dernier message: 25/08/2007, 01h35
  4. [JCombobox] modif d'une jcombobox par rapport à une autre
    Par The Wretched dans le forum Composants
    Réponses: 2
    Dernier message: 21/03/2005, 10h35

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