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 :

Changer le texte de combo box avec des variables


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Juillet 2020
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Juillet 2020
    Messages : 141
    Par défaut Changer le texte de combo box avec des variables
    Bonjour le Forum,

    je souhaite changer le texte de Combobox avec des données qui sont stockées dans des variables.

    En gros je souhaite un peu faire comme Excel," je change de page en cliquant sur un RadioButton", en mettant les données de chaque Combobox dans des variables.
    Le code fonctionne mais que pour une seule des combobox à la fois, il faut qu'une des combobox reste avec sa première entrée, c'est vraiment étrange.

    Voici mon code.
    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
        If RadioButtonG1.Checked = True Then 'Page 1
                S1COMBOG1 = S1COMBO.Text
                S1COMBOG1 = S2COMBO.Text
            End If
                    If RadioButtonG2.Checked = True Then 'Page 2
                          S1COMBOG2 = S1COMBO.Text
                S2COMBOG2 = S2COMBO.Text      
            End If 
     
     Private Sub RadioButtonG1_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButtonG1.CheckedChanged
                    If RadioButtonG1.Checked = True And RadioButtonG2.Checked = False Then
                S1COMBO.Text = S1COMBOG1
                S2COMBO.Text = S2COMBOG1
            End If
     
            If RadioButtonG2.Checked = True And RadioButtonG1.Checked = False Then
                    S1COMBO.Text = S1COMBOG2
                    S2COMBO.Text = S2COMBOG2
                End If
     
        End Sub
     
        Private Sub RadioButtonG2_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButtonG2.CheckedChanged
                If RadioButtonG1.Checked = True Then
                S1COMBO.Text = S1COMBOG1
                S2COMBO.Text = S2COMBOG1
            End If
     
            If RadioButtonG2.Checked = True  Then
                    S1COMBO.Text = S1COMBOG2
                    S2COMBO.Text = S2COMBOG2
            End If
     
        End Sub
    Merci pour votre aide.

  2. #2
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Bonjour,

    N'y a-t-il pas erreur de nom de variable dans ton code : SCOMBOG1 = S2COMBO.Text.

    Note que si tu obtiens ce que tu veux avec un Combo mais pas avec l'autre, c'est que les algorithmes sont différents, sans doute par erreur.

    J'espère que ceci te donnera l'idée ...

  3. #3
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Juillet 2020
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Juillet 2020
    Messages : 141
    Par défaut
    Bonjour Phil Rob,

    "N'y a-t-il pas erreur de nom de variable dans ton code : SCOMBOG1 = S2COMBO.Text."

    J'ai oublié le chiffre en recopiant le code lors du post.

    "Note que si tu obtiens ce que tu veux avec un Combo mais pas avec l'autre, c'est que les algorithmes sont différents, sans doute par erreur"

    Les deux Combobox fonctionnent mais pas ensemble, pour le moment si S1COMBO affiche le 1er élément de la liste alors S2COMBO affichera bien la donnée dans la variable, et si S2COMBO affiche le 1er élément de la liste alors S1COMBO affichera bien la donnée dans la variable.

    C'est comme ci la combobox gardait le focus, je trouve cela étrange.

  4. #4
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Si le passage d'une page à l'autre se fait par le click de l'onglet, ce click d'onglet désigne la page cible, et donc aussi le Combo cible.
    Un indicateur quelconque (RadioButton ou autre) devrait seulement informer s'il faut transférer le texte du Combo. On a alors une seule donnée à passer d'un seul Combo vers un seul autre. Vu ainsi, quel que soit le nombre de cibles possibles, une seule existe au moment du click d'un onglet. Une seule variable pour tout est déjà beaucoup.
    ....
    .

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 545
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 545
    Par défaut
    Je continue de penser que si n pages, le mieux est d'utiliser des TabPages ou des panels avec chacun leurs contrôles. et si les pages sont identiques en terme de présentation, c'est l'occasion d'en faire un contrôle utilisateur à proprement parlé

  6. #6
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Je ne suis pas sûr de bien comprendre ce que tu veux obtenir

    Je vais faire un test en plaçant ton code dans un Form pour voir ce que ça donne....


    Qu'y a-t-il dans les listes des Combo avant d'exécuter le code ?

  7. #7
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Juillet 2020
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Juillet 2020
    Messages : 141
    Par défaut
    ok, merci
    Voici ce qu'il y a dans les listes des Combo
    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
            S1COMBO.Items.Add("---")
            S1COMBO.Items.Add("Essai1")
            S1COMBO.Items.Add("Essai2")
            S1COMBO.Items.Add("Essai3")
            S1COMBO.Items.Add("Essai4")
            S1COMBO.Items.Add("Essai5")
            S1COMBO.Items.Add("Essai6")
            S1COMBO.Items.Add("Essai7")
            S1COMBO.Items.Add("Essai8")
            S1COMBO.Items.Add("Essai9")
            S1COMBO.Items.Add("Essai10")
            S1COMBO.Items.Add("Essai11")
            S1COMBO.Items.Add("Essai12")
     
     
            S2COMBO.Items.Add("---")
            S2COMBO.Items.Add("Essai1")
            S2COMBO.Items.Add("Essai2")
            S2COMBO.Items.Add("Essai3")
            S2COMBO.Items.Add("Essai4")
            S2COMBO.Items.Add("Essai5")
            S2COMBO.Items.Add("Essai6")
            S2COMBO.Items.Add("Essai7")
            S2COMBO.Items.Add("Essai8")
            S2COMBO.Items.Add("Essai9")
            S2COMBO.Items.Add("Essai10")
            S2COMBO.Items.Add("Essai11")
            S2COMBO.Items.Add("Essai12")

  8. #8
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Juillet 2020
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Juillet 2020
    Messages : 141
    Par défaut
    Je souhaite que lorsque l'utilisateur appuie sur RadioButtonG1 ou RadioButtonG2 les comboBox "S1COMBO et S2COMBO"se remplissent avec le texte qui est dans la variable

    Voici ou les variables sont placées
    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
    Private Sub S1COMBO_SelectedIndexChanged(sender As Object, e As EventArgs) Handles S1COMBO.SelectedIndexChanged
     
     If RadioButtonG1.Checked = True Then 'Page 1
                S1COMBOG1 = S1COMBO.Text
                S1COMBOG1 = S2COMBO.Text
            End If
                    If RadioButtonG2.Checked = True Then 'Page 2
                          S1COMBOG2 = S1COMBO.Text
                S2COMBOG2 = S2COMBO.Text      
            End If 
     
    End Sub
     
    Private Sub S2COMBO_SelectedIndexChanged(sender As Object, e As EventArgs) Handles S2COMBO.SelectedIndexChanged
     
     If RadioButtonG1.Checked = True Then 'Page 1
                S1COMBOG1 = S1COMBO.Text
                S1COMBOG1 = S2COMBO.Text
            End If
                    If RadioButtonG2.Checked = True Then 'Page 2
                          S1COMBOG2 = S1COMBO.Text
                S2COMBOG2 = S2COMBO.Text      
            End If 
     
    End Sub

  9. #9
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Bon, voici un projet de test dans lequel j'utilise des TabPages comme le suggère Umfred, et bien entendu fidèle à mes convictions, un CheckBox et une seule variable de passage.
    Le nombre de TabPage est sans importance, simplement le code s'allongera. Il conviendrait de passer à une écriture moins didactique (et donc moins lisible) de l'algorithme.
    Une petite vidéo pour voir comment ça marche : TempusVideo.zip
    Et le projet de test pour t'amuser un peu : Tempus2.zip
    ...

  10. #10
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 545
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 545
    Par défaut
    Avec des tabpages, plus besoin d'avoir de checkbox/radiobutton pour changer de page.

  11. #11
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Juillet 2020
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Juillet 2020
    Messages : 141
    Par défaut
    Citation Envoyé par Phil Rob Voir le message
    Bon, voici un projet de test dans lequel j'utilise des TabPages comme le suggère Umfred, et bien entendu fidèle à mes convictions, un CheckBox et une seule variable de passage.
    Le nombre de TabPage est sans importance, simplement le code s'allongera. Il conviendrait de passer à une écriture moins didactique (et donc moins lisible) de l'algorithme.
    Une petite vidéo pour voir comment ça marche : TempusVideo.zip
    Et le projet de test pour t'amuser un peu : Tempus2.zip
    ...
    Merci pour ce nouveau code, le fait de passer avec des TabPages règle effectivement le problème, j'ai néanmoins une erreur lorsque je reprend le code dans mon appli avec sender.Name "Dim CHK As String = sender.Name option strict on rejette toute liaison tardive."

  12. #12
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    @umfred
    C'est bien la magie dont tu parles que j'ai utilisé dans mon code CHKBox_Click envoyé hier. Mais avec l'événement CheclChanged, l'exécution passera 2 fois dans la procédure alors su'elle passerait seulement 1 fois avec l'événement Click.

    Je sens bien que nous ne serons pas d'accord sur ce détail mais peu importe, les 2 approches se valent pour qui peut les maitriser.

    Tu parles d'utilser des TabPages. C'est une excellente idée, je croyais que c'était déjà de cela qu'il s'agissait. Pourquoi n'envoie tu pas un petit projet de tests ?

  13. #13
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Ceci ne te convient pas ? Seul ce code, fait ce que tu demandes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        Private Sub S1_S2_COMBO_SelectedIndexChanged(sender As Object, e As EventArgs) Handles S1COMBO.SelectedIndexChanged, S2COMBO.SelectedIndexChanged
     
            Dim Tmp As String
            Tmp = S1COMBO.Text
            S1COMBO.Text = S2COMBO.Text
            S2COMBO.Text = Tmp
     
        End Sub
    En fait, l'utilisation des RadioButton est une difficulté car le Check de l'un provoque automatiquement le Dé-Check de l'autre.
    D'autre part, je ne comprends pas l'utilisation de 4 variables car je crois qu'il y a au plus 2 valeurs à stocker à un moment. Dans le code ci-dessus, j'utilise seulement une variable pour échanger 2 données.

    Si l'action de l'utilisateur sur les RadioButton doit servir "d'ordre'" d'agir, des CheckBox seraient sans doute plus faciles dès lors que c'est le programme qui déterminera quand Checker ou Dé-Checker, il n'y a pas de contrôle automatique entre les différents CheckBox. De plus, un seul CheckBox ferait l'affaire : il est Checké ou pas, soit 2 états. Cela marcherait aussi avec un seul RadioButton, mais avec 2 ...

  14. #14
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Juillet 2020
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Juillet 2020
    Messages : 141
    Par défaut
    Merci pour votre code,

    Je vais essayer d'être plus clair, les RadioButton sont là juste pour changer de page

    par exemple,
    Sur la page 1 la ComboBox "S1COMBO" affiche essai1 et la ComboBox "S2COMBO" affiche essai3 , sur la page 2 la ComboBox "S1COMBO" affiche essai5 et la ComboBox "S2COMBO" affiche essai7, si l'utilisateur appui sur l'une ou l'autre des ComboBox il retrouve ce qu'il a saisi.

  15. #15
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Mais ce doit-il obligatoirement être des RadioButton ? Cela ne peut-il être des CheckBox ou même de simples Button ?

    Autre question, tu écris Page 1, Page 2 : s'agit-il de Form différents ?

  16. #16
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Juillet 2020
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Juillet 2020
    Messages : 141
    Par défaut
    "Mais ce doit-il obligatoirement être des RadioButton ? Cela ne peut-il être des CheckBox ou même de simples Button ?"
    Non pas forcement, ma 1er idée a été de placer des labels notifier page1 et page2 avec un trait qui était positionnait sous ces labels suivant le click de l'utilisateur.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    If Selectionpage1.Location = New Point(11, 720) Then
     
    S1COMBOG1 = S1COMBO.Text
    S1COMBOG1 = S2COMBO.Text
     
    ElseIf Selectionpage2.Location = New Point(76, 720) Then
     
    S1COMBOG2 = S1COMBO.Text
    S2COMBOG2 = S2COMBO.Text
     
    End if
    "Autre question, tu écris Page 1, Page 2 : s'agit-il de Form différents ?"
    Non il n'y a pas d'autre Form.

  17. #17
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    J'aurais mal dormi si je ne te donnais pas la bonne écriture tout de suite. De plus, Option Strict On doit te donner des erreurs aussi sur les 3 dernière lignes du Form_Load.

    Voici le code complet corrigé (et un peu amélioré) :
    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
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    Option Explicit On
    Option Strict On
    Public Class Form1
     
        Dim TextAPasser As String = String.Empty
     
        Private Sub CHKBox_Click(sender As Object, e As EventArgs) Handles CHK1.Click, CHK2.Click, CHK3.Click
            Dim CHK As CheckBox = CType(sender, CheckBox)
            TextAPasser = String.Empty
            Select Case CHK.Name
                Case "CHK1" ' Nous sommes en Page 1
                    If CHK1.Checked Then
                        TextAPasser = Combo1.Text
                    End If
                Case "CHK2" ' Nous sommes en Page 2
                    If CHK2.Checked Then
                        TextAPasser = Combo2.Text
                    End If
                Case "CHK3" ' Nous sommes en Page 3
                    If CHK3.Checked Then
                        TextAPasser = Combo3.Text
                    End If
            End Select
        End Sub
     
        Private Sub TabControl1_Click(sender As Object, e As EventArgs) Handles TabControl1.Click
            Dim TextPage As String = TabControl1.SelectedTab.Text
            Select Case TextPage
                Case "TabPage1" ' Nous sommes entré en Page 1
                    If Not TextAPasser = String.Empty Then
                        Combo1.Text = TextAPasser
                    End If
                Case "TabPage2" ' Nous sommes entré en Page 2
                    If Not TextAPasser = String.Empty Then
                        Combo2.Text = TextAPasser
                    End If
                Case "TabPage3" ' Nous sommes entré en Page 3
                    If Not TextAPasser = String.Empty Then
                        Combo3.Text = TextAPasser
                    End If
            End Select
            'Vider  TextAPasser pour ne pas poluer les autres TabPages
            TextAPasser = String.Empty
        End Sub
     
        ' Jeu de test
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            '   Valeurs test dans les Combo
            Combo1.Items.Add("Test_1_1")
            Combo1.Items.Add("Test_1_2")
            Combo1.Items.Add("Test_1_3")
            Combo2.Items.Add("Test_2_1")
            Combo2.Items.Add("Test_2_2")
            Combo2.Items.Add("Test_2_3")
            Combo3.Items.Add("Test_3_1")
            Combo3.Items.Add("Test_3_2")
            Combo3.Items.Add("Test_3_3")
            Combo1.Text = Combo1.Items(0).ToString
            Combo2.Text = Combo2.Items(0).ToString
            Combo3.Text = Combo3.Items(0).ToString
        End Sub
     
    End Class
    ...

  18. #18
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 545
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 545
    Par défaut
    Je répète ce que je disais (sauf si ma compréhension initiale était mauvaise): on ne passe aucun information d'une page à l'autre, on veut en revanche conserver l'info sur chacune des pages, donc avec des tabpages, il n'y a besoin de rien (sauf dupliquer les contrôles).

    Dans ton code @Phil Robl, si on modifie en page 1, on coche la case, le texte est récupéré; on va sur l'onglet2, le texte est recopié. on modifie le choix du combo, on coche la case, on revient sur l'onglet 1 et hop, on a récupéré le choix de l'onglet 2 (je ne pense pas que c'est le but)

  19. #19
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Citation Envoyé par umfred Voir le message
    ...
    Dans ton code @Phil Robl, si on modifie en page 1, on coche la case, le texte est récupéré; on va sur l'onglet2, le texte est recopié. on modifie le choix du combo, on coche la case, on revient sur l'onglet 1 et hop, on a récupéré le choix de l'onglet 2 (je ne pense pas que c'est le but)
    Tu as sans doute raison Umfred et pour ce qui est du but, j'avoue que je n'ai pas toujours bien suivi ...
    Mais je pense que Tempus01, même débutant, pourra éliminer de mon exemple ce qui ne l'intéresse pas.

    ...

  20. #20
    Membre confirmé
    Homme Profil pro
    Technicien
    Inscrit en
    Juillet 2020
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Juillet 2020
    Messages : 141
    Par défaut
    Citation Envoyé par Phil Rob Voir le message
    J'aurais mal dormi si je ne te donnais pas la bonne écriture tout de suite. De plus, Option Strict On doit te donner des erreurs aussi sur les 3 dernière lignes du Form_Load.

    Voici le code complet corrigé (et un peu amélioré) :
    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
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    Option Explicit On
    Option Strict On
    Public Class Form1
     
        Dim TextAPasser As String = String.Empty
     
        Private Sub CHKBox_Click(sender As Object, e As EventArgs) Handles CHK1.Click, CHK2.Click, CHK3.Click
            Dim CHK As CheckBox = CType(sender, CheckBox)
            TextAPasser = String.Empty
            Select Case CHK.Name
                Case "CHK1" ' Nous sommes en Page 1
                    If CHK1.Checked Then
                        TextAPasser = Combo1.Text
                    End If
                Case "CHK2" ' Nous sommes en Page 2
                    If CHK2.Checked Then
                        TextAPasser = Combo2.Text
                    End If
                Case "CHK3" ' Nous sommes en Page 3
                    If CHK3.Checked Then
                        TextAPasser = Combo3.Text
                    End If
            End Select
        End Sub
     
        Private Sub TabControl1_Click(sender As Object, e As EventArgs) Handles TabControl1.Click
            Dim TextPage As String = TabControl1.SelectedTab.Text
            Select Case TextPage
                Case "TabPage1" ' Nous sommes entré en Page 1
                    If Not TextAPasser = String.Empty Then
                        Combo1.Text = TextAPasser
                    End If
                Case "TabPage2" ' Nous sommes entré en Page 2
                    If Not TextAPasser = String.Empty Then
                        Combo2.Text = TextAPasser
                    End If
                Case "TabPage3" ' Nous sommes entré en Page 3
                    If Not TextAPasser = String.Empty Then
                        Combo3.Text = TextAPasser
                    End If
            End Select
            'Vider  TextAPasser pour ne pas poluer les autres TabPages
            TextAPasser = String.Empty
        End Sub
     
        ' Jeu de test
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            '   Valeurs test dans les Combo
            Combo1.Items.Add("Test_1_1")
            Combo1.Items.Add("Test_1_2")
            Combo1.Items.Add("Test_1_3")
            Combo2.Items.Add("Test_2_1")
            Combo2.Items.Add("Test_2_2")
            Combo2.Items.Add("Test_2_3")
            Combo3.Items.Add("Test_3_1")
            Combo3.Items.Add("Test_3_2")
            Combo3.Items.Add("Test_3_3")
            Combo1.Text = Combo1.Items(0).ToString
            Combo2.Text = Combo2.Items(0).ToString
            Combo3.Text = Combo3.Items(0).ToString
        End Sub
     
    End Class
    ...
    Bonsoir Phil Rob,
    Merci pour le code, il fonctionne de mon côté, il faut maintenant que je l'adapte à ma form.

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/12/2016, 15h47
  2. remplir combo box avec liste des pays
    Par ygeeg dans le forum Windows Forms
    Réponses: 0
    Dernier message: 19/02/2010, 16h20
  3. Problème de combo box avec additem
    Par Mariquiqui dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 01/04/2008, 19h25
  4. Formatage d'un texte flash avec des variables PHP
    Par renaud26 dans le forum Flash
    Réponses: 6
    Dernier message: 01/10/2007, 16h31
  5. [C#] Message box avec des boutons diff.
    Par BoOom dans le forum Windows Forms
    Réponses: 1
    Dernier message: 21/04/2006, 11h47

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