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 :

Créer un nombre de CheckBox inconnu avant de compiler..


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 31
    Par défaut Créer un nombre de CheckBox inconnu avant de compiler..
    Bonjour,

    J'ai un petit problème de méthode pour afficher un nombre variable de controles : mon application doit aller lire dans une base de données quels sont les indices disponibles et ensuite les proposer à l'utilisateur.
    On ne connait donc pas le nombre d'enregistrement qu'il y aura dans la base avant de compiler..

    Ce que j'ai fait (en trichant), c'est que comme je sais qu'il n'y aura que moins de 20 indices, j'ai créé 20 contrôles que je met en mode invisible, et ensuite lorsque je parcour la base, je met en mode visible seulement le nombre égal au nombre d'enregistrements. Le problème est que j'ai une grande fenêtre avec un seul controle lorsqu'il n'y a qu'un seul enregistrement....

    Quelqu'un a une idée?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 183
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 183
    Par défaut
    Bonjour.

    Tu peux créer dynamiquement tes controls checkbox dans le load de ta form par exemple comme le fait le designer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
            Me.CheckBox1 = New System.Windows.Forms.CheckBox
            Me.CheckBox1.AutoSize = True
            Me.CheckBox1.Location = New System.Drawing.Point(106, 212)
            Me.CheckBox1.Name = "CheckBox1"
            Me.CheckBox1.Size = New System.Drawing.Size(81, 17)
            Me.CheckBox1.TabIndex = 1
            Me.CheckBox1.Text = "CheckBox1"
            Me.CheckBox1.UseVisualStyleBackColor = True
            Me.Controls.Add(Me.CheckBox1)
    Mais pour ma part, je passerai plutôt par un listview pour faire ce genre de truc. Par contre le soucis que tu vas rencontrer et qu'il n'y a pas d'autosize pour le listview et que forcément tu devras lui allouer un taille prédéfinie (ou coder l'autosize du listview "à la main").

    Une derniére solution serait peut être de passer par un DataGridView.

    Cdt.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 31
    Par défaut
    Merci pour cette réponse...

    Je me retou maintenant confroté un autre problème du même type. J'ai 3 forms: form1, form2 et form3 pour faire classique. Dans frm3,je veux utiliser des variables de form1. J'ai donc compri qu'il falait déclarer ma variable en Public dans form1. Jusque la OK. Le ouci, c'st que cette variable es un tableau et je ne cnnait pas la taille (je l'attribue dans form1).
    Coment décrer le taleau puis lui attribuer sa taille que lorsqueje la connitrais?
    Merci
    et désol pour les fates, mon clavier est faché avec certaines touches

  4. #4
    Membre expérimenté Avatar de Faladin
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2007
    Messages : 333
    Par défaut
    Tiré de l'excellent cours de PLasserre

    Si on ne connaît pas le nombre d'éléments maximum et que l'on doit ajouter, enlever des éléments, il vaut mieux utiliser une collection (ArrayList) plutôt qu'un tableau avec des Dim Redim Preserve.
    J'espère que ça t'aide

  5. #5
    Membre Expert
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 183
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 183
    Par défaut
    Bonjour.

    Oui, un ArrayList ou plutôt un List(Of CheckBox) dans ton cas car le ArrayList, à part pour mélanger les choux et les carottes ...

    Enfin, c'est un avis personnel !

    Cdt.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 31
    Par défaut
    Bonjour à tous,

    Merci pour votre aide, j'ai donc créer une Public Nom As New List (of String) dans form1 comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public Class Form1
    
        Inherits System.Windows.Forms.Form
        Public etiquette(9) As Object
        Public coche(9) As Object
        Public Nom As New List(Of String)
        Public N As Integer
    Cependant, lorsque je veux créer une matrice dans form3 qui est définie ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Class Form3
     
        Public A(Nom.Count, Nom.Count) As Single

    Il y a un problème car VB me dit que name 'Nom' is not declared. Jel'ai pourtant bien déclaré en public...?

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

Discussions similaires

  1. Comment Créer une vue avec nombre de colonnes inconnu d'avance ?
    Par masterx_goldman dans le forum Développement
    Réponses: 3
    Dernier message: 21/10/2009, 17h28
  2. créer un nombre inconnu à priori, de variables
    Par pedro99 dans le forum Général Python
    Réponses: 3
    Dernier message: 25/09/2009, 23h01
  3. Réponses: 2
    Dernier message: 28/10/2008, 20h19
  4. nombre de checkbox cochés
    Par manaboko dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 02/05/2005, 15h39
  5. [débutant] obtenir le nombre de checkbox cochées
    Par macke_d dans le forum Composants
    Réponses: 3
    Dernier message: 30/03/2005, 02h17

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