Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : insérer des controles a l'execution [ Archives Visual Basic / Formulaire ] (Stephane)

samedi 5 janvier 2002 à 21:55:01 | insérer des controles a l'execution

Stephane

Membre Club
Bonjour,

j'aurais voulu savoir si c'est possible et comment mettre des controles (de base) dans une form en execution.
attention il ne faut pas que c'est controle soit indexé parce que en fait c'est pour reconstituer la feuille a partir d'un exe alors si je mettais déjà des contrôle indexé, il faudrait que je l'ai mettent dans tous les controle conteneur (je sais pas si vous avez compris) enfin ce n'est qu'une explication du but.

merci a tous pour vos réponses

samedi 5 janvier 2002 à 23:37:42 | Re : insérer des controles a l'execution

PatriceVB

Administrateur CodeS-SourceS
Tu peux utiliser l'api CreateWindow en spécifiant le type de fenêtre que tu veux créer TextBox, CommandButton. Mais ceci implique d'utiliser les techniques de sous-classements pour récupérer les évènements correspondants à ces controles.
@+



-------------------------------
Réponse au message :
-------------------------------

Bonjour,

j'aurais voulu savoir si c'est possible et comment mettre des controles (de base) dans une form en execution.
attention il ne faut pas que c'est controle soit indexé parce que en fait c'est pour reconstituer la feuille a partir d'un exe alors si je mettais déjà des contrôle indexé, il faudrait que je l'ai mettent dans tous les controle conteneur (je sais pas si vous avez compris) enfin ce n'est qu'une explication du but.

merci a tous pour vos réponses

dimanche 6 janvier 2002 à 18:50:54 | Re : insérer des controles a l'execution

Stephane

Membre Club
merci, entre temp y a qqn (je me rappelle deja plus de son nom) qui a mis une source et ca marche super

a+

dimanche 6 janvier 2002 à 18:56:08 | Re : insérer des controles a l'execution

borntoclimb

Le pb n'est pas trés clair, j'avais laissé une petite doc la dessus si ça peut t'être utile...

------------
Ajouter un control dynamiquement (at runtime)
le control doit être déclaré si il n'est pas déja utilisé dans le projet.
Si il est ajouté aux composants mais non utilisé, il ne faut pas choisir l'option "Remove info about unused ActiveX" dans les propriétés du projet.

Pour Commencer il faut référencer le control:
Dim WithEvents ctlDynamic As VBControlExtender
Dim WithEvents ctlDynaWeb As VBControlExtender
Dim WithEvents ctlCommand As VB.CommandButton

Pour declarer un Control:
Licenses.Add "MSComctlLib.TreeCtrl" // pour un treeview

Pour l'ajouter ensuite:
Set NomControl = Controls.Add("ProgId","Name", container)
Set ctlDynamic = Controls.Add("MSComctlLib.TreeCtrl","myctl", Form1) //le treeview
Set ctlDynaWeb = Controls.Add("Shell.explorer.2", "myctlweb", Form1) //WebBrowser
Set ctlCommand = Controls.Add("VB.CommandButton", "ctlCommand1", Form1) //un Button

Le deuxiéme exemple montre qu'il n'est pas toujours facil de deviner le ProgId d'un control. Pour les OCX c'est souvent le nom du fichier OCX + "Lib." + le nom du Control (expl "MSComctl.ocx"). Une autre solution consiste à ajouter le control dans une form "at design time", d'editer le form.frm dans un editeur de text et de trouver la ligne:

Begin SHDocVwCtl.WebBrowser WebBrowser1 //pour SHDocVw.dll

Si on utilise "SHDocVwCtl.WebBrowser" comme progid pour le WebBrowser, Visual Basic donne le bon ProgId en message d'erreur... (La demarche est un peu tordue)

Certain control ne demande pas de déclaration (Commandbutton, TextBox...)


Pour acceder aux propriétés du control:
ctlDynamic.Visible = True //Le control créé est invisible par defaut


Supprimer un Control Ajouté dynamiquement
Form1.Controls.Remove "myctl"


samedi 8 juillet 2006 à 15:38:29 | Re : insérer des controles a l'execution

MadM@tt

Membre Club
pour résumer le tout j'ai fait un tutoriel, donc pour ceux qui passe sur cette page et qui sont interessés, regardez dans mes sources.

Ciaò
MadMatt
www.madmatt.fr.st




Cette discussion est classé dans : controles, controle, insérer, execution, indexé


Répondre à ce message

Sujets en rapport avec ce message

Controle onglet ????????? [ par m.bazier ] Voila, j'aimerai insérer un controle onglet dans un autre controle onglet ?Je m'explique :j'ai un controle onglet composé de deux onglets:- onglet1- o URGENT MERCI : Changer le parent d'un controle [ par marc ] Je souhaite faire une form principale avec une arborescence d'un coté et des controles de l'autre. Chaque fois que je clique sur un noeud, je veux aff controle utilisateur indexé [ par JcDuss ] Salut,J'ai realisé un controle utilisateur, et j'aimerais utiliser l'evenement mousemove.Ceci fonctionne tres bien lorsqu'il n'est pas indexé, mais pl modification nombre d'onglets en execution [ par fagol ] Je souhaiterai savoir comment modifier le nombre d'onglet(retirer 3 onglets dans un controle SSTAB)au cours de l'execution du programme utilisant un t problème "erreur d'execution 380" [ par sanders ] bonjour, voilà j'ai récupéré un controle activeX qui se nomme Thsaisie.ocx. je l'ai rajouté aux composants de mon projet quand je visualise une feuill controles multiples [ par mastercatz ] J'aimerais savoir comment faire pour créer plusieurs occurences d'un controle utilisateur, sachant que le nombre de controles à afficher est determiné Licence ActiveX sur un de mes controles [ par liquide ] Bonjour,J'ai fait un composant ActiveX, que j'ai compilé (OCX), une fois ceci effectué je l'ai associé a un prog. Au final, le soft et l'activeX sont mise a jour du contenu des controles [ par ludwig89 ] bonjourj'ai un controle text et un controle listboxj'ai un module qui lit un fichier texte et qui increment les 2 controles, le module fonctionne corr Suppression d'un groupe de controle indexé [ par adv ] Bonjour,dans l'execution d'un programme, je crée dynamiquement des controles sur la base d'un controle existant ctrl(0) avec la commande suivante : lo


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,234 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.