none
comment ajouter une form à un .exe visual basic RRS feed

  • Question

  • Bonjour je fais un logiciel en vb avec visual studio et j'aimerais faire un système de dlc ou les utilisateurs pourraient créer leurs propres form et puissent les installer dans le programme et qui puisse interagir avec les paramètres du logiciel, mais je ne veux pas mettre a disposition les codes du programme pour éviter toutes modifications des sécurités etc... est-ce que c'est possible de faire sa en vb? et si oui comment svp. Si vous avez des questions j'y répondrais. Merci
    dimanche 25 décembre 2016 19:43

Réponses

  • Il est possible de créer une Classe dans votre programme par exemple "FormUtilisateurs" et laisser faire l'utilisateur pour ajouter des contrôles dynamiquement.

    Par exemple:

    Le code de la forme utilisateur est:

    Public Class FormUtilisateur
        Public Sub New(ByVal NbBouton As Integer, ByVal NomDesBoutons() As String)
    
            ' Cet appel est requis par le concepteur.
            InitializeComponent()
    
            ' Ajoutez une initialisation quelconque après l'appel InitializeComponent().
            Dim intIndex As Integer
            For intIndex = 1 To NbBouton
                Dim UnBouton As New Button
                UnBouton.Text = NomDesBoutons(intIndex - 1)
                'Taille du bouton fixée
                UnBouton.Size = New Size(100, 30)
                'Position des boutons l'un après l'autre
                UnBouton.Location = New Point(100 + (intIndex - 1) * 105, 100)
                AddHandler UnBouton.Click, AddressOf ClickBoutonUtilisateur
                Me.Controls.Add(UnBouton)
            Next
    
    
        End Sub
    
        Private Sub ClickBoutonUtilisateur(ByVal sender As System.Object, ByVal e As System.EventArgs)
            Label1.Text = "Bouton " & sender.text & " clické."
            'Ici un test peut être fait pour décider l'action. par exemple Bouton 1= Action 1....
            If sender.text = "Quitter" Then
                Me.Close()
            End If
        End Sub
    
    End Class
    Maintenant à vous de jouer avec l'ajout des Controls et le comportement que vous voulez leur attribuer.

    lundi 26 décembre 2016 11:03
  • A partir de l'exemple que je vous ai donné, vous pouvez créer une interface pour votre utilisateur pour positionner ces contrôles et écrire le code pour chaque contrôle.

    Rien n'est impossible... mais vous devez écrire le code pour construire l'interface.

    Si vous regardez VBA sous Excel vous pouvez voir comment les Macro et les Form sont construits, il vous suffit de construire la même chose pour votre application VB...

    Bon courage...


    lundi 26 décembre 2016 14:11

Toutes les réponses

  • Il est possible de créer une Classe dans votre programme par exemple "FormUtilisateurs" et laisser faire l'utilisateur pour ajouter des contrôles dynamiquement.

    Par exemple:

    Le code de la forme utilisateur est:

    Public Class FormUtilisateur
        Public Sub New(ByVal NbBouton As Integer, ByVal NomDesBoutons() As String)
    
            ' Cet appel est requis par le concepteur.
            InitializeComponent()
    
            ' Ajoutez une initialisation quelconque après l'appel InitializeComponent().
            Dim intIndex As Integer
            For intIndex = 1 To NbBouton
                Dim UnBouton As New Button
                UnBouton.Text = NomDesBoutons(intIndex - 1)
                'Taille du bouton fixée
                UnBouton.Size = New Size(100, 30)
                'Position des boutons l'un après l'autre
                UnBouton.Location = New Point(100 + (intIndex - 1) * 105, 100)
                AddHandler UnBouton.Click, AddressOf ClickBoutonUtilisateur
                Me.Controls.Add(UnBouton)
            Next
    
    
        End Sub
    
        Private Sub ClickBoutonUtilisateur(ByVal sender As System.Object, ByVal e As System.EventArgs)
            Label1.Text = "Bouton " & sender.text & " clické."
            'Ici un test peut être fait pour décider l'action. par exemple Bouton 1= Action 1....
            If sender.text = "Quitter" Then
                Me.Close()
            End If
        End Sub
    
    End Class
    Maintenant à vous de jouer avec l'ajout des Controls et le comportement que vous voulez leur attribuer.

    lundi 26 décembre 2016 11:03
  • oui mais j'aimerais que l'utilisateur puisse créer sa propre form avec ses labels ses buttons et qu'il puisse modifier les événements buttons_click label_click, qu'il puisse modifier les texts, créer sa propre form puis qu'il l'installe sur mon programme et qu'il puisse l'utiliser

    lundi 26 décembre 2016 13:07
  • A partir de l'exemple que je vous ai donné, vous pouvez créer une interface pour votre utilisateur pour positionner ces contrôles et écrire le code pour chaque contrôle.

    Rien n'est impossible... mais vous devez écrire le code pour construire l'interface.

    Si vous regardez VBA sous Excel vous pouvez voir comment les Macro et les Form sont construits, il vous suffit de construire la même chose pour votre application VB...

    Bon courage...


    lundi 26 décembre 2016 14:11
  • Merci :)
    lundi 26 décembre 2016 14:28