FORECOLOR D'UN BUTTON (COMMAND) AVEC UN SEUL LIGNE DE CODE! LOL

Messages postés
4030
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
- - Dernière réponse : davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
- 20 oct. 2004 à 20:52
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/26682-forecolor-d-un-button-command-avec-un-seul-ligne-de-code-lol

davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
ahh merci beaucoup, je connais tt ça, mais aussi on peut profiter de forecolor d'un bouton avec cette méthode, sera plus jolie ;-).
a+
Silmon
Messages postés
85
Date d'inscription
mardi 6 janvier 2004
Statut
Membre
Dernière intervention
7 mai 2007
-
Ma solution?

- En ce qui me concerne, j'evite antant que je peux les Ocx et les Api.
- Tu sais, dans mes premiers programmes, j'utilisais
les chekbox au style Grafique. Ce n'etait pas forcement pour le forecolor mais pour mettre un icone a gauche du caption.
- Aujourd'hui dans mes programmes persos, j'utilise le command normal et j'oublie le forecolor (solution 4)
- Mais pour les progs que je vends, j'ajoute au command
une image (Solution 5).

Je dessine l'image avec le paint. A gauche je met une image (genre un icon), a droite un texte. En outre, je specifie la couleur de fond dans la propriete MaskColor du bouton et je met true a UseMaskColor. Ainsi le fond de l'image apparait transparant comme un icon.

Mais si tu veux en savoir plus n'hesite pas a demander

;-)
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
Et maintenant, tu préfere quelle solution Silmon? ;-)
Silmon
Messages postés
85
Date d'inscription
mardi 6 janvier 2004
Statut
Membre
Dernière intervention
7 mai 2007
-
Il n'y a pas de quoi.

Amicallement a+
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
voila une tres simple solution silmon pour le problème de l'execution 2 fois la procédure.
t'ajoute au début

if check1.value = false then exit sub
'ton code a executer comme msgbox
'et en fin t'ajoute
check1.value = false

voila une autre ligne de code de + : pas trop vraiment!
Merci pour toi, je n'ai pas remarque ça au début ;)
salut a+
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
Salut, je vous remercie
Silmon on peut placer des images avec les checkBox et les optionBox alors c'est un autre avantage. C'est faisable ave les apis, mais il faut au moins 50 lignes de code + les api à utiliser (j'ai deja résolu avec les api et ça me prend trop la tete :( ).
Pour le lancement deux fois la procédure c'est simple à résoudre ;) pas trop compliquer par rapport à 50 lignes ;). Surement que ce n'est pas la solution parfaite mais elle rendre service et tres pratique.
Amicallement a+
kana_franc
Messages postés
1
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
15 octobre 2004
-
très pratique!
Silmon
Messages postés
85
Date d'inscription
mardi 6 janvier 2004
Statut
Membre
Dernière intervention
7 mai 2007
-
Je suis etonné qu'avec tellement de comentaires donnés,
personne n'ai remarqué les problemes suivants de cette solution:
Utiliser un CheckBox et faire:

Private Sub Check1_Click()
Check1.Value = False
MsgBox "Ok"
End Sub

va lancer 2 fois la sub.
Dans l'exemple ci-dessus, le msg Ok apparaitra 2 fois.

Quant au Option, quand on clique dessus, le code:

Private Sub Option1_Click()
Option1.Value = False
MsgBox "Ok"
End Sub

fera perdre le focus a l'objet.
En plus, on dirait qu'au premier clique la sub est aussi lancé deux fois.

Solutions?
-1 utiliser seulement le checkBox
et controler que le code ne s'execute pas deux fois
(pas pro comme solution)

-2 utiliser une API
(pro)

-3 utiliser un autre objet commandButton
(comme deja suggerer mais probleme d'ajouter les OCX)

-4 oublier le forecolor pour les commands
(ma solution)

-5 Crer une image avec un text paint de la couleur desirée et l'inserer dans le command
(solution qui occupe plus de place et plus lente au chargement, mais possibilité d'afficher une icone avec du texte a n'importe quel emplacement)
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
salut acoi,
lol franchement je n'ai pas remarqué pour Defaut et cancel, mais je vais voir ce soir si c'est possible avec les api.
Pour Linux bah j'attends mon ami cboulas, je crois qu'il y a deja une solution: un programme je ne me rappel plus de son nom, mais je vais chercher et te dire ;)
a++
acoi
Messages postés
16
Date d'inscription
samedi 26 mai 2001
Statut
Membre
Dernière intervention
5 avril 2007
-
Sympa vos commentaires
Concernant l'astuce, les propriétés Defaut et Cancel n'existent pas ce qui est pénalisant.
C'est quoi l'astuce via les API ?

Concernant le Soft sous Linux qui lit les applis Windows c'est sérieux ?
Pensez vous qu'il existe le "pendant" de TSE sous Linux, pour afficher des applis Windows.
Sinon je suis preneur.
cboulas
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
11 -
J'attend encore sa réponse, mais sinon je l'appel Lundi
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
merci cboulas,
j'espere l'avoir sans demmarer l'ordi a chaque fois
a++
cboulas
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
11 -
J'ai un pote qui bosse sur un poste, le poste fonctionne sous windows et Linux en même temps je me recarde et te dit cela.
cboulas
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
11 -
Bhà j'ai bien vu qu'avec le Mandrake cela ressemble bien a windows et puis j'ai trouver un soft qui peut lire les soft windows alors j'essai de convaincre le chef mais il préfère windows car il connait. Pfff.
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
ah c'est dommage pour ton entreprise vraiment, elle doit payer pas mal alors!!, mais s'elle fait des formations sur linux pour les utilisateurs sera beaucoup mieux et moins payer...
Mais bon, l'interface windows reste encore tres aimer par la plupart des utilisateurs :-(, alors sera vraiment super cool si on arrive a voir Linux et Window ensemble comme des fenetres de deux programmes lancer en meme temps, mais je crois c'est impossible, sinon il faut avoir un 3eme systeme d'exploitation qui rassemble Linux et Window ensemble, de façon on peut les utiliser sans redemmarer l'ordi pour passer d'un systeme a un autre!!
mais bon, ça arrive a ma tete depuis x temps mais j'arrive pas a trouver une solution, alors peut etre cboulas ou un autre pourra le faire !!! ;) :-)
a++
cboulas
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
11 -
La galère j'était même pas au courrant pour les licenses de bases, je connais Linux mais mes utilisateurs au taf non, et c'est là que ça bloque car tout le monde forme sous Windoze et du coup ils mettent tout le monde dans le même train
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
ahh lol mon pauvre, faut pas suivre trop les licences ;) sinon tu vas vider .... :p. Mais tu n'as rien vu pour les licences avec les bases des donnees MS, c'est...... !!!!!!!!!
mais bon, Linux + MySql nous souve un peu ;) c'est gratuit :-)
a+
cboulas
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
11 -
Il m'ont bien fait acheter 2 licenses Terminal Server alors que Terminal Server est fournit avec Win2k ou Xp, grossomodo je l'ai avait déjà
cboulas
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
11 -
C'est pas une erreur ce sont juste des abru....
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
en plus faut suivre l'histoire des liciences de microsoft avec ces ocx :-(!!!
la faute de MS n'a pas pense d'ajouter cette option a un simple command!! je ne comprends pas pourquoi?! c'est une erreur ou .....
a+
cboulas
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
11 -
Ah oui, c'est vrai que de le faire sans OCX c'est pas pareil. autant pour moi
davidauche
Messages postés
150
Date d'inscription
jeudi 20 mars 2003
Statut
Membre
Dernière intervention
8 janvier 2008
-
ouais ouais, :-), mais cboulas, dans ton cas il faut ajouter l'ocx fourni par MF à tes programmes;).
a++ ;)
cboulas
Messages postés
2641
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
8 janvier 2014
11 -
lol, c'est vrai que ça parrait suicidaire, mais y'a encore plus simple : la référence : Microsoft Form 2.0 Object Library qui permet de coloré les boutons
econs
Messages postés
4030
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
19 -
lol faut pas être défaitiste comme çà. L'idée est, au contraire sympathique. Y'a pas mal de monde qui se heurte à ce problème.
Tu viens de le résoudre par un bidouillage amusant.


On peut aussi utiliser un contrôle CommandButton (et non Command), et là, la propriété ForeColor existe.
(0 ligne de code)

:o)