Limite de controle sur une form !!! heeeelp

Résolu
Yaume1 Messages postés 86 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 13 septembre 2005 - 11 août 2005 à 14:59
Yaume1 Messages postés 86 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 13 septembre 2005 - 12 août 2005 à 10:15
Bonjour tout le monde, j'ai encore un problème (mais un costaud là) !!! lol

j'ai atteint la limite des 100 contrôles (à priori) que l'on peut
mettre sur une form et il faut absolument que je puisse en mettre une
bonne quarantaine d'autres... j'ai regardé un peu ce qui se disait sur
le forum et à chaque fois, le conseil donné aux personnes en galère
était de créer dynamiquement les controles, mais ça, je n'ai pas
trouver comment faire. En fait, j'ai une fenêtre principal qui appelle
cette form "calcul" où j'ai plein de controles (par "calcul.show").
J'ai cru comprendre qu'on pouvait créer un controle (un bouton, un
textbox, une combobox ...etc... ) avec du code mais je ne sais pas
quelles fonction utiliser et je ne connais pas les syntaxes.



Si qqun pouvait m'aider avec des exemples ce serait royal (je sais j'en
demande beaucoup). Franchement j'ai bien essayé de réduire le nombre de
controles mais je vois pas comment faire mieux ! je suis en stage et
j'ai un problème assez compliqué de calcul et de dimensionnement de la
distribution d'un moteur de moto de compétition à faire... c'est pas
gagné ! lol



Merci d'avance à tous ceux qui auront une idée (même toute petite) !




C2


(Un stagiaire trop en galère !!!)

5 réponses

violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
11 août 2005 à 19:44
Violent Ken

Il y a plus simple: tu peux indexer tes composants.
Exemple : Créé une nouvelle form. Pose un bouton, click droit sur ce bouton, copier, et colle dans la form. Il y aura un message du genre 'Command1 existe déjà, voulez vous créer un groupe de contrôles ?'. Dire oui.
Alors Command1 s'appelera Command1(0) et le nouveau bouton s'appelera Command1(1).
Et çà peut aller jusqu'à Command1(400) si tu veux (et encore plus !)

Ensuite, pour différencier les événements sur chaque contrôle, voilà comment procéder :
Exemple: click sur le bouton
D'habitude, il y a Command1_click() comme sub
Là il y aura Command1_click(Index as integer)

Et donc pour l'utilisation:
Private Sub Command1_Click(Index As Integer)


Select Case Index
Case 0
MsgBox "command1"

Case 1
MsgBox "command2"
End Select


End Sub
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
11 août 2005 à 19:53
j'ajouterais à l'explication de Ken que tu peux soit les copier directement (donc creer tes .. "plus de 1000, testé" composants), soit ne créer que le premier, et ensuite, les générer au besoin :

Txt1(0) sur la form

For i = 1 to 9 '10 en tout
Load Txt1(i)
'ensuite tu le places, le rends visible, etc....
next i

et le code est celui de Ken ;)
PCPT
3
Yaume1 Messages postés 86 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 13 septembre 2005 1
11 août 2005 à 16:21
ya vraiment personne pour m'aider ????



:'(
0
cs_Fife Messages postés 73 Date d'inscription lundi 23 octobre 2000 Statut Membre Dernière intervention 16 mars 2008 3
11 août 2005 à 17:30
Je n'ai pas touché à mon vb depuis des lustres mais je ferai comme ça :


Prenons par exemple un label qu'on appelera myLabel.





'vb6 (souvenirs troubles)


Dim myControl as Control


Set myControl = Controls.Add(VB.Label, myLabel)


myControl.Visible = True


myControl.Caption = "Hello"


'Idem pour les autres propriétés





'vb.net (beaucoup plus frais que le précédant)


Dim myLabel As New Label


myLabel.Location = New Point(0, 0)


myLabel.Size = New Size(100, 100)


myLabel.Text = "Hello"


'Et ainsi de suite pour toutes les propriétés pour lesquelles tu ne veux pas la valeur par défaut.


Me.Controls.Add




Aller, bon courage pour ton projet !

Cécile
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Yaume1 Messages postés 86 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 13 septembre 2005 1
12 août 2005 à 10:15
merci tout le monde pour votre aide, c'est super cool, ça marche !



;)
0
Rejoignez-nous