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 :

[VB.NET] Communication entre forms


Sujet :

Windows Forms

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 4
    Points : 6
    Points
    6
    Par défaut [VB.NET] Communication entre forms
    Salut !

    J'expose mon pb : J'ai deux forms, Form1 et Form2, avec Form1 qui contient un TabControl avec 8 TabPages, et Form2 qui contient entre autres un bouton. Sur le 3ème TabPage de Form1, j'ai un bouton qui lance Form2 et j'aimerai que quand on clic sur le bouton de Form2, le TabPage affiché sur Form1 soit le 5ème et non plus le troisième.

    Merci pour votre aide !

    Alex

    Environnement: VB .NET 2003
    Framework: 1.1
    OS: WinXP Home

  2. #2
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Points : 1 022
    Points
    1 022
    Par défaut
    Salut
    Pour ce qui est de changer l'ordre de tes tabpages, il n'y a pas de methodes .net a ma connaissance qui te permet de le faire. J'ai ecris ces deux fonctions pour bouger un tabpage vers la gauche ou vers la droite. Inspires ent toi ou utilises les directement :

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    Private Sub MoveTabPageLeft(ByVal TabControlToChange As TabControl, ByVal Page As TabPage)
            Dim Position As Integer = TabControlToChange.TabPages.IndexOf(Page)
            If (Position = 0) Then Return 'Already first 
            Position -= 1
            If (Not TabControlToChange.TabPages.Contains(Page)) Then Return
            'Page not part of the control 
            Dim myTabPage As TabPage
            'Copy the pages someplace 
            Dim Pages As New ArrayList
            For Each myTabPage In TabControlToChange.TabPages
                Pages.Add(myTabPage)
            Next
            TabControlToChange.TabPages.Clear()
     
            For iCntr As Integer = 0 To Pages.Count - 1
                myTabPage = CType(Pages(iCntr), TabPage)
                If (iCntr = Position) Then TabControlToChange.TabPages.Add(Page)
                If (Not myTabPage Is Page) Then TabControlToChange.TabPages.Add(myTabPage)
            Next
            TabControlToChange.Invalidate() 'Forces tab control to be redrawn 
        End Sub
     
        Private Sub MoveTabPageRight(ByVal TabControlToChange As TabControl, ByVal Page As TabPage)
            Dim Position As Integer = TabControlToChange.TabPages.IndexOf(Page)
            If (Position = TabControlToChange.TabPages.Count - 1) Then Return 'Already last 
            Position += 1
            If (Not TabControlToChange.TabPages.Contains(Page)) Then Return
            'Page not part of the control 
            Dim myTabPage As TabPage
            'Copy the pages someplace 
            Dim Pages As New ArrayList
            For Each myTabPage In TabControlToChange.TabPages
                Pages.Add(myTabPage)
            Next
            TabControlToChange.TabPages.Clear()
     
            Dim aPage As TabPage
     
            For iCntr As Integer = 0 To Pages.Count - 1
                myTabPage = CType(Pages(iCntr), TabPage)
     
                If (Not myTabPage Is Page) Then
                    TabControlToChange.TabPages.Add(myTabPage)
                Else
                    aPage = Page
                End If
                If (iCntr = Position) Then
                    TabControlToChange.TabPages.Add(aPage)
                End If
            Next
     
            TabControlToChange.Invalidate() 'Forces tab control to be redrawn 
        End Sub

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 4
    Points : 6
    Points
    6
    Par défaut
    Merci pour ta réponse. Le code que tu as mis c'est pour changer un TabPage d'ordre mais moi je veux seulement changer l'affichage sur Form1 depuis Form2 (ex., sur Form1 je fais : TabControl.SelectedIndex = 2).

  4. #4
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Points : 1 022
    Points
    1 022
    Par défaut
    Ha desole je n'avais pas compris.
    Dans ce case il te faut mettre ton tab control en public ou alors creer une propriete pour acceder a ce tab control
    Ensuite tu peux y acceder depuis ton autre form, en appellant la propriete sur une instance de ton form1 (tu n'a qu'a l'initialiser avec l'instance existante de form1 que tu passes en parametre au constructeur de form2)


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

Discussions similaires

  1. communication entre form
    Par bul dans le forum C#
    Réponses: 14
    Dernier message: 08/11/2010, 16h51
  2. Réponses: 13
    Dernier message: 04/12/2006, 11h21
  3. communication entre forms
    Par jadey dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 09/08/2006, 16h58
  4. [C#] Communication entre FORM
    Par kooljy dans le forum Windows Forms
    Réponses: 3
    Dernier message: 15/06/2006, 13h51
  5. communication entre forms
    Par Archimède dans le forum Langage
    Réponses: 10
    Dernier message: 13/10/2005, 18h05

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