Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#16 2013-04-05 16:16:57 Re : probleme avec variable dans la declaration de class

Mushussu
membre
Lieu: Orléans
Date d'inscription: 2012-05-24
Messages: 802

Re: probleme avec variable dans la declaration de class

Hors ligne

 

#17 2013-04-11 22:00:04 Re : probleme avec variable dans la declaration de class

imdidi
membre
Date d'inscription: 2012-10-05
Messages: 242

Re: probleme avec variable dans la declaration de class



bonjour

J'ai encore un probleme

je veux avoir acces a une variable dans ma class mais de lexterieur de la class

en gros dans "draw" si je fais un

 println(maclass.test);

test étant une variable global dans la class

il me sort toujours "false"

si je fais un println(test); dans ma classe
la sa fonctionne

merci

Hors ligne

 

#18 2013-04-11 23:02:52 Re : probleme avec variable dans la declaration de class

Marty
membre
Date d'inscription: 2012-04-27
Messages: 143

Re: probleme avec variable dans la declaration de class



Salut,

Quel est ton code ?

Hors ligne

 

#19 2013-04-12 08:42:41 Re : probleme avec variable dans la declaration de class

Mushussu
membre
Lieu: Orléans
Date d'inscription: 2012-05-24
Messages: 802

Re: probleme avec variable dans la declaration de class



Bonjour,

Dans ta classe, il faut créer des méthodes pour avoir accès à ces variables. Il faut penser que les variables de l'instance sont hermétiques, pour y avoir accès le mieux est de passer par des méthodes.
Elles sont très simples :

MaClass instance;

void setup() {
  frameRate(2);
  instance = new MaClass(10, 30, true);
}

void draw() {
  println(instance.getTest());
}

void keyPressed() {
  instance.setTest(!instance.getTest());
}

class MaClass {
  int x;
  int y;
  boolean test;

  MaClass(int _x, int _y, boolean _test) {
    x = _x;
    y = _y;
    test = _test;
  }

  void setTest(boolean _test) {
    test = _test;
  }

  boolean getTest() {
    return test;
  }
}

En java, il y a une convention typographique pour les noms de classe. La première lettre est une majuscule. Pour les instances et les autres variables la première lettre est en minuscule. Cela permet de bien différencier classe et instance de classe.

Dernière modification par Mushussu (2013-04-12 08:46:35)

Hors ligne

 

#20 2013-04-16 23:08:23 Re : probleme avec variable dans la declaration de class

imdidi
membre
Date d'inscription: 2012-10-05
Messages: 242

Re: probleme avec variable dans la declaration de class



bonjour tous le monde

d' abord merci a toi mushussu pour ton aide et sourtout ta patience

pour les "méthodes a variables" j' étais au courant qu'il fallait les déclarer pour avoir accès a cette dernière

j'ai fini par trouver mon erreur qui étais du a ma ligne de code qui étais pas inscrit au bon endroit
ex: avant que la variable soit utilisé donc il me sortait toujours false puisqu'il était avant la ligne qui donnais la commande true

j'aurais juste une autre question.
je veut utiliser des note midi donc si jen crois ce site http://www.phys.unsw.edu.au/jw/notes.html
les note midi vont de 21 =A0 a aller a 108 = C8

je voudrais afficher les note selon le nombre qui est dans la variable disons "notemidi"
ex: 21 doit afficher A0, 22 doit afficher B0 etc

je voulais le faire avec un case ex:

switch(notemidi) {

case '21':
println("A0");
break;

case'22':
println("B0");
break;
}

ya t'il un moyen plus rapide ou une autre méthode que d' écrire 85 case ce qui créerai un énorme code ce que je voudrais évite

merci D'avance

Dernière modification par imdidi (2013-04-16 23:10:49)

Hors ligne

 

#21 2013-04-16 23:46:28 Re : probleme avec variable dans la declaration de class

Marty
membre
Date d'inscription: 2012-04-27
Messages: 143

Re: probleme avec variable dans la declaration de class



Probablement utiliser un tableau. L'index est le numéro de note et le contenu la note ?

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2025