Création des formulaires en code uniquement [Résolu]

Messages postés
14
Date d'inscription
lundi 1 octobre 2007
Statut
Membre
Dernière intervention
23 décembre 2008
- - Dernière réponse : bonjourcheval
Messages postés
228
Date d'inscription
mercredi 13 décembre 2000
Statut
Membre
Dernière intervention
8 août 2011
- 12 juin 2008 à 17:05
salut à tous !!!

voilà mon problème. je voudrais créer un formulaire en vb6 sp6 mais je ne voudrais pas le faire graphiquement.
est il un moyen de créer les formulaires, les boutons, les textbox et tout le reste dans le code.
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
228
Date d'inscription
mercredi 13 décembre 2000
Statut
Membre
Dernière intervention
8 août 2011
3
Merci
C'est possible. Voici un petit exemple. J'ai fait un formulaire en grande majorité dynamique.

Voilà ma fonction qui cré mes contrôles
Mon code est un peu brouillé, mais il fonctionne.
Et Si tu veux utilisé des controles qui utilise la propriété .text tu n'as qu'à la modifié un peu pour qu'elle vérifie si elle doit utiliser caption ou text.

Exemple d'appel :

AJouterControl "Label", "nomControl", _
                        300, 4000, intPosX, intPosY _
                        , frm, "Description", 0

Public Sub AJouterControl(strType As String, strNom As String, _
            intH As Integer, intL As Integer, intPosX As Integer, _
            intPosY As Integer, frm As Form, ByVal strTexte As String, _
            intAlign As Integer, Optional conteneur As String = "tabScenario", _
            Optional intFontSize As Integer = 8, _            Optional blnBold As Boolean False, Optional strBg As String &H8000000F)
           
Dim nouveauControl As Control
Dim strTest As String
'Comme je travail avec des frames et des sstabs, je met un 3ieme argurment
'À mon crontols.Add. Si c'est pour l'ajouter dans une form sans conteneur
'Ne met pas de troisième argument.
Set nouveauControl = frm.Controls.Add("VB." & strType, strNom & nbControlesCréés, frm.Controls(conteneur))
With nouveauControl
    .Visible = True
    .Left = intPosX
    .Top = intPosY
    .Height = intH
    .Width = intL
    .Caption = strTexte
    .Alignment = intAlign
    .FontSize = intFontSize
    .FontBold = blnBold
    .BackColor = strBg
End With
nbControlesCréés = nbControlesCréés + 1
End Sub




Alors voilà, jespere que ca va t'aider

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 201 internautes nous ont dit merci ce mois-ci

Commenter la réponse de bonjourcheval
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
0
Merci
en vb.Net
Dim Form2 As New Form
Commenter la réponse de gillardg
Messages postés
14
Date d'inscription
lundi 1 octobre 2007
Statut
Membre
Dernière intervention
23 décembre 2008
0
Merci
donc c'est impossible en vb6. ou dois je utiliser les api windows ?
Commenter la réponse de agbebe
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
0
Merci
as tu éssayé??
Dim Form2 As New Form
Commenter la réponse de gillardg
Messages postés
45
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
23 juin 2008
0
Merci
salut a toi,

tu peut regarder sur ce lien si tu veut http://www.vbfrance.com/codes/CREER-DYNAMIQUEMENT-FORMULAIRE_26450.aspx

c'est notre amis [auteur/TRAYAK/343422.aspx trayak] qui l'a fait et aparament sa marche impécable

j'espère t'avoir aider

bon courage pour la suite
Commenter la réponse de thierylaurent
Messages postés
14
Date d'inscription
lundi 1 octobre 2007
Statut
Membre
Dernière intervention
23 décembre 2008
0
Merci
salut !!!


merci à toi bonjourcheval. ton code marche à merveille.
est-il possible créer un form de la même manière ??

thierylaurent en fait je cherchais un code en vb6 mais comme je développe aussi en vba je vais essayer.
a+
Commenter la réponse de agbebe
Messages postés
228
Date d'inscription
mercredi 13 décembre 2000
Statut
Membre
Dernière intervention
8 août 2011
0
Merci
Il est certain que ma fonction ne peut pas créer de form. Toutefois, si tu as au moins une form vierge, tu pourrais essayer quelque chose du genre :

Dim c As Form2


Set c = New Form2


c.Height = 4000
c.Width = 4000


c.Caption = "test sur nouvelle form"
AJouterControl2 "label", "SuperNom", 400, 1000, 1, 1, c, "MonSuperTexxte", 1


c.Show

Bon, J'ai tester avec ce code. Si tu as une form vide, tu peux en créer une nouvelle et la modifier comme tu veux. Dans l'exemple je n'ai modifier que la gradeur de la form, mais tu peux faire ce que tu veux après.
Et le control que j'ai ajouter à bien afficher sur la feuille que je venais de créer!

Tu devrais te débrouiller avec ça o.-
Commenter la réponse de bonjourcheval