Comment appeller la texture d'un bouton JS?

Questions à propos du GUI, y compris la partie script.
RomainDel
Messages : 132
Inscription : 18 Juin 2012 09:31
Localisation : Albi
Contact :

Comment appeller la texture d'un bouton JS?

Message par RomainDel » 26 Jan 2016 15:11

Bonjour,
je cherche quel est le code pour appeller la texture d'un bouton avec les nouvelles UI.

Code : Tout sélectionner



var CouleurVert : Texture2D;
var CouleurVertA : Texture2D;
var BoutonVert : GameObject;
var TextureVert : Texture;
var TextureBleu : Texture;


var Tank : GameObject;

var Conteur = 1;

function OnMouseDown() {

    if (Conteur == 1) {

       // BoutonVert.Image.SourceImage = CouleurVertA; ?????????

        Conteur = 2;
	
        Tank.GetComponent.<Renderer>().material.mainTexture = TextureVert;
    }	

    else if (Conteur == 2) {

        //   BoutonVert.Image.SourceImage = CouleurVertA; ??????????

        Conteur = 1;
	
        Tank.GetComponent.<Renderer>().material.mainTexture = TextureBleu;
    }	

    }


Cela doit être un truc tout con mais je bloque dessus depuis se matin, donc si quelqu'un pouvait me le dire.

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Comment appeller la texture d'un bouton JS?

Message par boubouk50 » 26 Jan 2016 15:24

GetComponent () Scrogneugneu! ;-)
Pour tout accès à un Component d'un gameObject, il faut passer par un GetComponent () exception faite du transform.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

RomainDel
Messages : 132
Inscription : 18 Juin 2012 09:31
Localisation : Albi
Contact :

Re: Comment appeller la texture d'un bouton JS?

Message par RomainDel » 26 Jan 2016 15:36

Avec get componant() j'y arrive pas non plus
voila ce que je fait:

Code : Tout sélectionner

        BoutonVert.GetComponent.<CanvasRenderer>().Image.sourceImage = CouleurVertA;

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Comment appeller la texture d'un bouton JS?

Message par boubouk50 » 26 Jan 2016 15:44

Va te documenter un peu sur les Components pour mieux assimiler ce qu'ils sont.

Pour faire court:
Pourquoi aller chercher le Component CanvasRenderer? C'est pas lui qui possède l'image que je sache? C'est le Component Image qu'il te faut. C'est lui qui possède l'image.
Ensuite, ce n'est pas parce que la variable dans l'Inspector se nomme source Image, que c'est ce que tu cherches.
C'est pour cela que la documentation est faite:
Documentation Unity Image
Tu trouveras donc que l'image est représentée par un sprite et donc pour changer ce sprite il faut accéder à la variable sprite.
Ainsi, tu obtiens: (C'st du C# mais ça semble la même syntaxe pour le Js)

Code : Tout sélectionner

BoutonVert.GetComponent.<Image>().sprite = CouleurVertA;
Il va de soi que CouleurVertA est de type Sprite.

EDIT - (Mon dieu que ce post paraît pédant et arrogant... Bon faut pas le prendre comme ça, hein!)
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

RomainDel
Messages : 132
Inscription : 18 Juin 2012 09:31
Localisation : Albi
Contact :

Re: Comment appeller la texture d'un bouton JS?

Message par RomainDel » 26 Jan 2016 15:45

En fait je veux acceder a ca :
Image

Avatar de l’utilisateur
Iwa
Messages : 1131
Inscription : 25 Avr 2012 16:20
Contact :

Re: Comment appeller la texture d'un bouton JS?

Message par Iwa » 26 Jan 2016 17:39

Si tu suis ce que Boubouk t'as donné, tu auras ce que tu cherches :)
"N'est stupide que la stupidité Monsieur..." - Forest Gump
... sauf si tu lis pas ça :)

Si tu as tout ce qu'il te faut, merci de penser à basculer ton sujet en [RESOLU] en éditant ton tout premier post ;)

RomainDel
Messages : 132
Inscription : 18 Juin 2012 09:31
Localisation : Albi
Contact :

Re: Comment appeller la texture d'un bouton JS?

Message par RomainDel » 26 Jan 2016 17:58

Cela me donne cette reponse quand je fait la methode a boubouk:

Image

Avatar de l’utilisateur
Iwa
Messages : 1131
Inscription : 25 Avr 2012 16:20
Contact :

Re: Comment appeller la texture d'un bouton JS?

Message par Iwa » 26 Jan 2016 18:06

Il te manque un accès au package. Si tu vas dans ton éditeur de code favoris, clique droit sur "Image" et tu dois avoir un lien "Resolve" au début, dans Mono. Tu as sûrement la mm chose dans Visual, je sais plus comment ça s'appelle.
"N'est stupide que la stupidité Monsieur..." - Forest Gump
... sauf si tu lis pas ça :)

Si tu as tout ce qu'il te faut, merci de penser à basculer ton sujet en [RESOLU] en éditant ton tout premier post ;)

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Comment appeller la texture d'un bouton JS?

Message par boubouk50 » 26 Jan 2016 18:10

c#

Code : Tout sélectionner

using UnityEngine.UI;
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

RomainDel
Messages : 132
Inscription : 18 Juin 2012 09:31
Localisation : Albi
Contact :

Re: Comment appeller la texture d'un bouton JS?

Message par RomainDel » 26 Jan 2016 18:16

Non y a pas ca dans Microsoft visual studio.

Bon du coup c'est juste une librairie a ajouter, manque plus qu'a trouver la quelle...


Edit:
ok merci beaucoup, je vais essayer de le passer en JS

Edit:
voila la ligne de code

Code : Tout sélectionner

#pragma strict
import UnityEngine.UI;

Répondre

Revenir vers « L'interface GUI »