[VB6] définir un "thème"

Fermé
erimen Messages postés 521 Date d'inscription mardi 20 mars 2012 Statut Membre Dernière intervention 29 novembre 2021 - 9 déc. 2012 à 17:10
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 - 11 déc. 2012 à 09:50
Salut,

Je voudrais savoir s'il était possible de définir soit-même son thème, je veux dire par là les couleurs, les formes, la police, etc... par défaut des objets tels que frame, textbox, label, etc ...

merci de partager votre expérience
A voir également:

9 réponses

Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
9 déc. 2012 à 20:17
Bonsoir erimen,
Oui, c'est à toi à l'implémenter, mais beucoup de choses sont possible .. sur en DOT.Net.
Tu parles de VB6, mais le Visual Basic en DOT.Net est cent fois mieux et gratuit avec la version 'express' et en plus, la dernière version de Visual Studio Express 2012 est téléchargeable ici: https://visualstudio.microsoft.com/
Bonne programmation
0
erimen Messages postés 521 Date d'inscription mardi 20 mars 2012 Statut Membre Dernière intervention 29 novembre 2021 78
10 déc. 2012 à 09:17
Pour les cours je DOIS utiliser VB6 ... mais merci quand meme
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
10 déc. 2012 à 11:36
Puisque tu doit utiliser VB6, je te conseille de mettre public tes variables de couleurs dans un module, de cette façon, tes variables seront connue avant même l'affichage des formulaires.
Mieux que des variables, les structures.
Une structure est un ensemble de variables qui sont regroupées, par exemple: Couleur.Form1Fond, Couleur.Form1Texte, Couleur.TextBox1Fond, Couleur.TextBox1Texte, etc.
Bonne journée.
0
erimen Messages postés 521 Date d'inscription mardi 20 mars 2012 Statut Membre Dernière intervention 29 novembre 2021 78
10 déc. 2012 à 18:16
dans quel module, un que je crée moi même ?
0

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

Posez votre question
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
10 déc. 2012 à 19:00
Oui, dans VB6, tu as au minimum un formulaire (si tu as choisis "EXE Standard" à la création du projet).
Tu ajoutes des contrôles et tu as également la feuille de code qui lui est attachée.
Dans la partie "Projet" (souvent à droite de l'écran), tu cliques avec le bouton droit de la souris dans l'espace vide ou dans le menu, tu cliques sur "Projet", "Ajouter un module".
Voila.
0
erimen Messages postés 521 Date d'inscription mardi 20 mars 2012 Statut Membre Dernière intervention 29 novembre 2021 78
10 déc. 2012 à 21:41
et je dois mettre quoi dans ce module ? genre

textx(x).backcolor = &H00C0C0C0&

?
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
10 déc. 2012 à 22:30
Bonsoir erimen,
Effectivement, tu peux mettre "textx(x).backcolor = &H00C0C0C0&", mais, de 1, il faut référencer le formulaire (trop lourd) et de 2, c'est à mon avis trop ciblé.
Je pense, sans vouloir contrer tes envies, que, mettre un peu de couleur c'est bien, mais trop de couleur tue l'harmonie du formulaire.
Alors, je pencherais, mais cela reste mon avis perso, pour quelques couleurs, genre:
- pour le formulaire : le fond et le texte,
- pour les textbox : le fond et le texte en normal + le fond et le texte quand il y a erreur de syntaxe,
- si tu ajoutes une ou plusieurs images, le contour,
- si tu as des frames, couleur de fond ... etc.

Déjà pour tout cela, il faut créer une structure, déclarer les variables, définir les valeurs dans une procédure qui est appelée dès le départ ...

Dans le module:
Option Explicit

Private Type cCouleurs
    form_Fond       As Integer
    form_Text       As Integer
    tbx_Fond_Nrml   As Integer
    tbx_Text_Nrml   As Integer
    tbx_Fond_Err    As Integer
    tbx_Text_Err    As Integer
    img_Contour     As Integer
    frame_Fond      As Integer
End Type
Public MesCouleurs As cCouleurs

Private Sub Main()
    form_Fond = &H8000000F      ' système : sommet du bouton
    form_Text = &H80000012      ' systèeme : texte du bouton
    tbx_Fond_Nrml = &H8000000F  ' système : sommet du bouton
    tbx_Text_Nrml = &H80000012  ' systèeme : texte du bouton
    tbx_Fond_Err = &HC0FFFF     ' jaune très clair
    tbx_Text_Err = &HFF&        ' rouge fort
    img_Contour = &H80&         ' bordeau
    frame_Fond = &H8000000F     ' système : sommet du bouton
End Sub

Il faut faire commencer ton programme par le "Main". Pour ce faire, il faut, dans le menu, cliquer sur "Projet", "Propriétés de ...", et dans la boîte de dialogue, "Objets de démarrage", choisir "Sub Main", cliquer sur "OK".
Ensuite, dans n'importe quel formulaire de ton projet, tu fait appel, par exemple, pour l'écriture d'une textbox, comme ceci: NomDeLaTextBox.ForeColor = MesCouleurs.tbx_Text_Nrml et pour la couleur de fond : MesCouleurs.tbx_Fond_Nrm.
Quand il y a une erreur dans la texte box, pour le fond : MesCouleurs.tbx_Fond_Err, et pour le texte : MesCouleurs.tbx_Fond_Err.

J'espère t'avoir aidé un peu. Bonne soirée et bonne programmation.
0
erimen Messages postés 521 Date d'inscription mardi 20 mars 2012 Statut Membre Dernière intervention 29 novembre 2021 78
11 déc. 2012 à 07:16
Merci mais moi je voyais ca avant la compilation du programme.
en faite je cherche quelque chose dans le style :

j'introduit une textbox dans mon programme, du coup vb ajoute des variables avec sa couleur, sa visibilité, son activation, son background etc.
j'imaginerais un fichier qui contient le titre textbox et a dedans tous les paramètres possible pour une textbox qui contient des valeur de base comme visible : true - enabled : true - name : textx(x) etc etc

je m'explique de plusieurs façon afin de mieux te faire comprendre ce que je cherche. :p

merci déjà pour ton aide apporté je vais essayer ca déjà pour créer des "themes" de couleur ^^
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
11 déc. 2012 à 09:50
Bonjour erimen,

Dans le cas d'un fichier (texte par exemple), tu garde tout. Il faut ajouter (par ex. dans le "Main" un accès à une procédure qui va lire les renseignements structurés dans le fichier texte, et soit remplir les variables comme décrites dans le message précédant, soit remplir un tableau, auquel cas il faudra faire appel à un de ces éléments pour donner la bonne valeur à telle ou telle propriété de tel contrôle.

C'est faisable, mais il faut structuré le fichier de telle façon que tu puisse, un jour ou l'autre, ajouter un ou plusieurs éléments sans devoir tout chamboulé !

J'insiste sur la structure du fichier .. si important qu'il faut bien y pensé (et surtout l'écrire) avant !
0