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.NET Discussion :

ouverture d'une fênetre dans un panel en Visual Basic


Sujet :

VB.NET

  1. #1
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 24
    Par défaut ouverture d'une fênetre dans un panel en Visual Basic
    Bonjour tout le monde;
    J'essaye de faire une application en utilisant Visual Basic, mais je ne suis qu'une débutante ==>

    En faite voilà ma question :

    j'ai divisé une windows Form en 2 panel en utilisant les splitcontainer.le 1er panel contient des boutons et le 2ème une image (20% pour le 1er panel et 80% pour le 2eme).quand on clique sur un bouton la fenêtre appropriée s'ouvre.
    Ma question c'est comment on peut faire pour que les fenêtres s'ouvrent dans le panel; autrement dit je veux que quand on clique sur le bouton la fenêtre s'ouvre au niveau du panel c'est à dire en le cachant et en avant la même dimension que lui ??

    Merci d'avance pour vos réponses


    PS: je compte sur vous

  2. #2
    Membre émérite Avatar de methylene
    Profil pro
    Inscrit en
    Février 2010
    Messages
    659
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2010
    Messages : 659
    Par défaut
    Tout ce que je peux te dire c'est que tu ne dois pas ouvrir une nouvelle form dans un panel lol, enfin après chacun sa façon de faire.

    Et encore une fois du code pour illustrer un problème de programmation, du screenshot pour illustrer un problème de type graphique, c'est pourtant pas dur et ça simplifie tellement la vie

    Merci !

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 319
    Par défaut
    Bonjour

    Tu n'utilises pas vraiment la bonne méthode.

    Il serai plus facile de créer des contrôles personnalisés qui correspondraient a chacune de tes fenêtres et lors que tu cliques sur un bouton alors le contrôle s'affiche dans le panel.

    En espérant que ca t'aidera un peu

    Nasty

  4. #4
    Membre confirmé Avatar de yochima
    Profil pro
    Inscrit en
    Août 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 93
    Par défaut
    Bonjour,
    pour remplir les split container, un outils visual est tres pratique : les crystal report.

    J'espere juste que tu connais un peu car je ne trouve pas ça tres intuitif et j'aurais du mal a expliquer.

    En gros le principe est de créé un nouvel élément crystal report (.rpt) dans ton projet. c'est une sorte de page de dessin dans lequel tu peux mettre des objets et lié des dataset (c'est sa force).

    ainsi tu remplis les dataset correspondant, puis ça te génère le .rpt que tu peux mettre dans le split container

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
                'bordereau_TEPEL1 est l'objet généré par le crystal report
                'CRviewer est mon split container
                CRviewer.ReportSource = bordereau_TEPEL1
                CRviewer.Refresh()

    il doit y avoir des tuto si tu veux persister
    bonne chance

  5. #5
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 24
    Par défaut
    Citation Envoyé par nasty Voir le message
    Bonjour

    Tu n'utilises pas vraiment la bonne méthode.

    Il serai plus facile de créer des contrôles personnalisés qui correspondraient a chacune de tes fenêtres et lors que tu cliques sur un bouton alors le contrôle s'affiche dans le panel.

    En espérant que ca t'aidera un peu

    Nasty
    Et comment je peux faire ce côntrole ??

  6. #6
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    1 048
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 048
    Par défaut
    En premier lieu je te conseille de lire en diagonal le(s) réponse comprenant le mot Crystal Report. Puis de les oublier....

    Pour le contrôle personnalisée une des techniques consiste à utiliser une collection de panel (le panel étant une sorte de panneau sur lequel tu peux afficher tout ce que tu veux).

    Lors de l'execution du programme et au moment voulu, tu prends l'objet pannel qui t'interesse et tu l'affiche dans ton splitcontainer (avec la propriété dock à fill et visible à true pour qu'il s'étende sur toute la place disponible) et tu caches les autres pannel (dock = none et visible = false).

    Un peu comme si tu avais un mur et que t'y accroche un panneau avec plein de post-it, punaise et je sais pas quoi d'autres, parmi une collection de panneau qui traine par terre (pour imager la chose).

    Le principal problème avec cette technique et la conception en mode design des différents panneau, plus particulièrement la navigation entre ces panneaux. (Oublie pas de leur mettre un vrai nom!!!) et peut être aussi des allocations de mémoire pas vraiement à 100% utiles....

    Et pour finir, un panneau pouvant contenir d'autres panneaux tu peux faire autant de niveau que tu veux.

  7. #7
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 24
    Par défaut
    en faite je veux que la fenêtre s'ouvre dans le panel

  8. #8
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Une solution consite à :
    • modifier la form FX qui doit "s'ouvrir dans le panel" en créant un panel PX avec la propriété Dock=Fill qui contient tout les control de la form FX.
    • une fois la form FX créée, modifier la propriété Parent de PX en lui assignant l'un des panels P1 ou P2 du SplitContainer.

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

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 194
    Par défaut
    lu en diagonale, mais mettre une fenetre dans un panel ca se fait
    ca revient totalement au meme que de faire un usercontrol, sauf qu'en plus l'utilisateur peut la sortir de son container pour la promener (genre s'il a 2 écrans) et on peut l'appeler d'autre part dans le code de manière autonome

    (de toute façon form hérite de control donc c'est un control comme un autre)


    quand à utiliser crystal report pour remplir un splitcontainer, ca fait froid dans le dos !


    et pour que la fenetre soit dans le panel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    dim f as new formX
    f.formborderstyle = none
    f.toplevel = false  '
    f.topmost = false   ' un seul des 2 suffit mais je sais jamais lequel
    f.dock=fill
    monpanel.controls.add(f) 
    f.visible = true
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  10. #10
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 24
    Par défaut
    j'ai trouvé la solution mais d'une autre manière :p
    j'ai utilisé les MDI c'est ça ce que je voulais demandé dès le début mais puisque je viens de travailler avec VB pour la 1ere fois je savais pas ses propriétés

    En tout cas merci pour tout les gens qui m'ont aider, Vraiment un grand MERCI

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

Discussions similaires

  1. [c# ou VB.net] afficher une Form dans un Panel
    Par octal dans le forum Windows Forms
    Réponses: 4
    Dernier message: 09/03/2013, 16h43
  2. [C#] Comment ouvrir une form dans un panel
    Par Le Basque dans le forum Windows Forms
    Réponses: 7
    Dernier message: 28/02/2007, 12h31
  3. Réponses: 15
    Dernier message: 02/03/2006, 15h34
  4. Ouverture d'une page dans page nouvelle/en cours
    Par francis m dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 08/05/2005, 00h29
  5. [Drag & Drop] Mettre une fiche dans un panel
    Par corwin_d_ambre dans le forum Composants VCL
    Réponses: 5
    Dernier message: 12/01/2004, 10h46

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