hanakin Cliqueur Amateur
Nombre de messages : 492
Age : 59
Localisation : Angers
Date d'inscription : 12/09/2012
| Sujet: fonction afficher/effacer Dim 5 Oct 2014 - 20:30 | |
| petite fonction qui permet d'afficher et d'effacer progressivement un gui ou un objet se trouve iciMerci a Kitai pour l'aide (comme d'hab.) _________________ Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. ( Spock) |
|
Atavismus Grand Cliqueur Royal
Nombre de messages : 1857
Localisation : France
Date d'inscription : 27/01/2014
| Sujet: Re: fonction afficher/effacer Dim 5 Oct 2014 - 21:44 | |
| Merci de partager hanakin. Ca me rappelle une vieille fonction que j'ai faite il y a des années mais que j'utilise toujours : - Code:
-
function myFade(String type, int id, int val) { int trans; int limit; if(val < 0) { limit = 0; if(type=="g") { gui[id].Transparency = 100; gui[id].Visible = true; } else if(type=="o") { object[id].Transparency = 100; object[id].Visible = true; } trans = 100; } else { limit = 100; if(type=="g") gui[id].Transparency = 0; else if(type=="o") object[id].Transparency = 0; trans = 0; } while (trans != limit) { trans+=val; if(trans < 0) trans = 0; if(trans > 100) trans = 100; if(type=="g") gui[id].Transparency = trans; else if(type=="o") object[id].Transparency = trans; Wait(1); } if(val > 0 && type=="g") gui[id].Visible = false; if(val > 0 && type=="o") object[id].Visible = false; }
type : "o" pour un objet, "g" pour un guiid : id de cet objet ou de ce guival : une valeur négative pour un fade in ou une valeur positive pour un fade out. Plus la valeur est grande, plus ça fade rapidement (la pause est toujours de 1).L'approche et l'utilisation sont un peu différentes, mais le résultat est le même. |
|
hanakin Cliqueur Amateur
Nombre de messages : 492
Age : 59
Localisation : Angers
Date d'inscription : 12/09/2012
| Sujet: fonction afficher/effacer Dim 5 Oct 2014 - 23:12 | |
| Bah la je crois que ta fonction est nettement mieux tu fais tout en une seule fonction il y a bien moins de code , moi qui croyait économiser du code j'ai quand même bien plus de ligne il faudra que j'essaie ça. Merci pour le code _________________ Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. ( Spock) |
|
Atavismus Grand Cliqueur Royal
Nombre de messages : 1857
Localisation : France
Date d'inscription : 27/01/2014
| Sujet: Re: fonction afficher/effacer Lun 6 Oct 2014 - 8:06 | |
| Je crois que tu devrais essayer de mixer les deux hanakin. Avec une boucle while, c'est plus "élégant". Mais utiliser la référence au gui ou à l'objet, c'est mieux que d'utiliser l'id comme je le fais. Pour cela, tu peux peut-être passer les deux références (gui et objet) et mettre null pour celle que tu ne veux pas. Tu vois ce que je veux dire ? (Cela dit, Kitai a certainement une meilleure solution encore... ) |
|
hanakin Cliqueur Amateur
Nombre de messages : 492
Age : 59
Localisation : Angers
Date d'inscription : 12/09/2012
| Sujet: Re: fonction afficher/effacer Lun 6 Oct 2014 - 15:08 | |
| T'as raison c'est plus propre comme ça: - Code:
-
function afficher_GUI(this GUI*,int X) { this.Visible=true; int Trans; Trans=100; while (Trans!=0) { Wait(X); this.Transparency=Trans ; Trans=Trans-10 ; } } _________________ Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. ( Spock)
Dernière édition par hanakin le Lun 6 Oct 2014 - 21:21, édité 1 fois |
|
Atavismus Grand Cliqueur Royal
Nombre de messages : 1857
Localisation : France
Date d'inscription : 27/01/2014
| Sujet: Re: fonction afficher/effacer Lun 6 Oct 2014 - 15:30 | |
| - hanakin a écrit:
- T'as raison c'est plus prope comme ça
Un ordinateur, c'est fait pour faire une bonne partie du travail à ta place. Tout ce qui peut être automatisé (ou presque) doit l'être. Du coup, si tu vois du code dupliqué ou qui se ressemble, c'est que tu peux optimiser tout ça (après, ce n'est pas une obligation, le tout et la finalité, c'est que ça fonctionne). En tout cas, tu peux encore pousser le truc par rapport à tes autres fonctions. |
|
Contenu sponsorisé
| Sujet: Re: fonction afficher/effacer | |
| |
|