Textfield + alpha sur le background

cs_zeguizmo Messages postés 138 Date d'inscription vendredi 1 août 2003 Statut Membre Dernière intervention 16 juillet 2009 - 9 juin 2007 à 01:51
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 - 11 juin 2007 à 20:40
Salut à tous,

J'essaye de faire un fond avec une transparence sur un textfield. Sans modifier la transparence du texte.

Je n'ai pas vu de fonction faisant cela, j'ai donc choisi de faire un prototype, de cette facon (inspiré d'une source anglophonne) :

TextField.prototype.getDepth = MovieClip.prototype.getDepth;
TextField.prototype.setalphaBG = function(a)
{
    var bg:MovieClip;
    with (bg = this._parent.createEmptyMovieClip(this._name+"alphaBG",this.getDepth()-1))
    {
        beginFill("0x000000",a);
        moveto(this._x,this._y);
        lineto(this._x+this._width, this._y);
        lineto(this._x+this._width, this._y+this._height);
        lineto(this._x, this._y+this._height);
        lineto(this._x, this._y);
        endFill();
    }
    return bg;
}

L'idée est simple, afficher un rectangle derriere le texte, avec une profondeur moindre, possedant la transparence a passée en parametre.

on l'utiliserait de cette facon :

mon_texte.setalphaBG(10);

Evidemment cela ne marche pas ^^

Quelqu'un aurait une piste ?

Sachant que cela ne semble pas etre un probleme de profondeur, j'ai essayé de mettre une profondeur enorme, que le carré recouvre le texte, pour tester, et rien ne s'affiche :(
J'ai également tenté de mettre des "trace" un peu partout, pour récupérer la hauteur et la largeur par exemple, voir si tout passait bien, ils fonctionnent bien et je récupere bien toutes les infos que je veux.
A noter que grace a des "trace" j'ai aussi pu obtenir comme information que le clip contenant le carré était bien créé !

C'est juste que rien ne s'affiche :(

Je me gourre dans mon Fill ?

Merci de votre aide !

ZeGuizmo

3 réponses

pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 11
9 juin 2007 à 23:04
j'ai un grand doute quand à la méthode de création de ton clip ...
Surtout que tu le définis comme "var" avant !
Pourquoi ne pas le créer directement lors de ta définition ? ça revient au même et c'est certainement ça le soucis ...

Au pire, trace BG un fois créé.

Peg'
0
faiblard Messages postés 337 Date d'inscription samedi 3 février 2007 Statut Membre Dernière intervention 4 janvier 2011
11 juin 2007 à 18:01
essaye peut etre :

    var bg:MovieClip = new MovieClip ( ) ;

Enjoy
Don't forget accept
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 11
11 juin 2007 à 20:40
non, ça c'est de l'AS3 ... et ça marche pas même sous Flash 8.

Peg'
0