Voici un composant pret à l'emploie.
C'est un bouton en dégradé dont on peut paramétrer l'apparence.
- les couleurs
- le texte
Pour cette source, je me base (pour ne pas dire une honteuse copie ^^)
sur le travaille de ... arf je n'arrive pas a retrouvé la source d'origine. Le père reconnaitra son fils ^^ .
Le composant en question se nomme sBouton (le nom d'origine était StyleBouton il me semble)
Ses propriétés sont assez simple et ne nécéssitent pas d'explication je pense, sauf le AutoValue.
Le composant possède deux états : Value = { True / False }
Si la valeur est True alors ce sont les couleurs On qui sont affichées,
si la valeur est False alors ce sont les couleurs Off qui sont affichés.
Si on met Enable et AutoValue à Vrai alors Value est modifié en fonction de la position de la souris.
Souris sur le composant --> Value = True
Souris hors du composant --> Value = False
Si Enable ou AutoValue valent False, alors l'utilisateur pourra piloter l'etat.
Source / Exemple :
Regardez dans le zip, c'est un peu la bazard dans le code mais bon,
Conclusion :
Premierement, il faut savoir que plus le bouton est grand plus l'affichage est lent. Ce qui fait que le changement de couleur lors du passage de la souris sur le bouton est moins réactif.
remarque : On peut utiliser ce composant comme ampoule (carrée ^^) en ne mettant pas de texte.
Il me reste a trouver :
Ce qui m'embête avec ce composant c'est l'emploie du timer pour trouver si la souris est sur le composant. Et cela sur deux aspects :
. Le premier est que il y aurra autant de timer que de bouton. Si la propriété Enable et AutoValue de tous les composants sont à Vrai, alors ca va prendre des ressources alors qu'un seul timer avec une boucle for ferrait aussi bien le bouleau avec momins de ressources ...
Si quelqu'un connait le moyen de lier les objets à une classe qui ferrait ce bouleau, qu'il me le dise ^^
. Le second est que lorsque le projet est en mode codage (pas en run), le timer fonctionne quand même. l'avantage c'est qu'on peut ainsi voir le fonctionnement du composant en directe. L'inconvénient, c'est que ca fait bugguer l'environement. Les carrés de saisie disparraissent, le menu d'autocompletion s'efface ...
Je cherche un moyen de faire en sorte que les composants qui sont en AutoValue ne fonctionnent que quand le programme est lancé.
Voila, toute remarque, critique ou conseil sont les bienvenus.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.