IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Appel méthode static/no static


Sujet :

avec Java

  1. #1
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut Appel méthode static/no static
    Bonjour,

    je reviens vers vous pour avoir une tite aide/réponse concernant l'appel d'une méthode d'une classe vers une autre classe. (Static/No Static)

    les bout de code qui me sert pour faire mes tests.

    Le code dans ma Classe B (sql.java)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    public String totalannuelTVA(){
            Fenetre Fen = new Fenetre(); // le constructeur sans arg
           // appel du composant Jdate pour obtenir la date 
            String year = Fen.Jdate.getDateFormatString(); // composant  qui se trouve sur la classe A
            requete = "select sum(MontantTva) from recu where Date <= '"+year+"-12-31' and Date >= '"+year+"-01-01' "; 
     
            System.out.println("le montant de la requête : " + requete);
            try {
                Connection con = SourceDonneesSqlite.getConnection();    /// connexion sur base SQLITE  
                Statement stmt = con.createStatement(); // A changer pour mettre un preparedStatement 
                ResultSet rs = stmt.executeQuery(requete);
                    while (rs.next()) {
                    Fen.tvaAnnuel.setText(rs.getString(1));  composant  qui se trouve sur la classe A
                    }
                rs.close(); // ferme la connexion
            } catch (Exception e) {
                System.out.println("Erreur:Anomalie lors de l'execution de la requête : " + e);
            }
     
        }
    l'appel dans ma classe A (Fenetre.java)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public Fenetre() {
    initComponents();
    this.setBounds(0x0, 0x0; 622, 481) // pour placer le fenêtre au centre et avec les bonnes dimensions 
    this.setBackground(Color.WHITE)
     
    sql Sql = new sql(); // le constructeur sans argument
    sql.totalannuelTVA();
    }
    Donc dans une autre classe j'aimerai appeler cette méthode pour afficher le résultat dans mon composant TextField (tvaAnnuel)

    Mais j'ai pas encore bien assimilé la problématique de l'appel des méthodes Static/non static car, c'est bien ici mon souci !

    En gros il me reste à comprendre se principe. Si vous avez un exemple quelque part ? MERCI

  2. #2
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 657
    Points
    2 657
    Par défaut
    Et bien tu peux rajouter le mot clé static devant "String totalannuelTVA()" et ainsi pouvoir l'appeler sans avoir à construire d'instance de classe.

    En gros une méthode peut être static si elle n'utilise aucune variable locale de classe.

  3. #3
    Membre chevronné
    Avatar de professeur shadoko
    Homme Profil pro
    retraité nostalgique Java SE
    Inscrit en
    Juillet 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Points : 1 855
    Points
    1 855
    Par défaut
    sauf que ça va planter: totalAnnuel appelle le constructeur de Fenêtre qui appelle totalAnnuel.... Il y a un défaut d'architecture
    J'ai des principes: je peux toujours trouver une bonne raison pour les contredire .... mais j'ai des principes!
    (mon excellent bouquin sur Java : https://eska-publishing.com/fr/livre...822407076.html)

  4. #4
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    Bonjour,

    Mettre des composants de la vue au milieu d'une fonction qui fait une requête sql me suprend un peu.

    Pour ma part je ferais totalannuelTVA() qui retourne la valeur, puis j'afficherai cette valeur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public Fenetre() {
    initComponents();
    this.setBounds(0x0, 0x0; 622, 481) // pour placer le fenêtre au centre et avec les bonnes dimensions 
    this.setBackground(Color.WHITE)
     
    sql Sql = new sql(); // le constructeur sans argument
    String val = sql.totalannuelTVA();
    tvaAnnuel.setText(val );  
     
    }
    Ainsi tu peux faire ce que tu veux avec val sans te préocuper de la classe sql . C'est juste une classe qui effectue des fonctions de requête et qui retourne un résultat, elle ne s'occupe pas de la vue ainsi tu pourras dans un autre projet réutilisé ces fonctions sans dépendre du nommage d'un composant par exemple. Je soutiens professeur shadoko dans l'idée du soucis d'architecture.
    L'Etat est bien administré quand l'escalier de l'école est usé et que l'herbe croît sur celui du tribunal.

    Modérateur BI

  5. #5
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par professeur shadoko Voir le message
    sauf que ça va planter: totalAnnuel appelle le constructeur de Fenêtre qui appelle totalAnnuel.... Il y a un défaut d'architecture
    Effectivement mon souci est bien là ...

    Car j'avais bien essayé de mettre "Static" et message d'erreur "non-static method .... cannnot be referenced from a static context "

  6. #6
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 657
    Points
    2 657
    Par défaut
    Voit ce qui est juste au dessus, ton totalAnnuel n'a pas a appelé Fenetre.

  7. #7
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par XxArchangexX Voir le message
    Bonjour,

    Mettre des composants de la vue au milieu d'une fonction qui fait une requête sql me suprend un peu.

    Pour ma part je ferais totalannuelTVA() qui retourne la valeur, puis j'afficherai cette valeur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public Fenetre() {
    initComponents();
    this.setBounds(0x0, 0x0; 622, 481) // pour placer le fenêtre au centre et avec les bonnes dimensions 
    this.setBackground(Color.WHITE)
     
    sql Sql = new sql(); // le constructeur sans argument
    String val = sql.totalannuelTVA();
    tvaAnnuel.setText(val );  
     
    }
    Ainsi tu peux faire ce que tu veux avec val sans te préocuper de la classe sql . C'est juste une classe qui effectue des fonctions de requête et qui retourne un résultat, elle ne s'occupe pas de la vue ainsi tu pourras dans un autre projet réutilisé ces fonctions sans dépendre du nommage d'un composant par exemple. Je soutiens professeur shadoko dans l'idée du soucis d'architecture.
    Oui c'est bien mon attention. Ne plus me soucier de la classe sql.java. Mais je n'ai pas encore pu m'en sortir.

    Ci-joint 2 captures pour voir mes erreurs...

    Classe A


    classe B
    Images attachées Images attachées   

  8. #8
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    Ne passe pas ta string résultat à ta méthode, je ne sais pas comment tu choisis l'année mais voila une fonction plus simple d'utilisation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    // annee au format AAAA
    public String totalannuelTVA(String annee){
            String resultat = "";
            requete = "select sum(MontantTva) from recu where Date <= '"+annee+"-12-31' and Date >= '"+annee+"-01-01' "; 
     
            try {
                Connection con = SourceDonneesSqlite.getConnection();    /// connexion sur base SQLITE  
                Statement stmt = con.createStatement(); // A changer pour mettre un preparedStatement 
                ResultSet rs = stmt.executeQuery(requete);
                    resultat = rs.getString(1))
                    }
                rs.close(); // ferme la connexion
            } catch (Exception e) {
                System.out.println("Erreur:Anomalie lors de l'execution de la requête : " + e);
            }
     
            return resultat ;
        }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public void appelSqlTvaAnnu(){
    sql Sql = new sql(); // le constructeur sans argument
    String val = sql.totalannuelTVA("2012");
    tvaAnnuel.setText(val );  
    }
    Par contre pour afficher tes erreurs il faut la phrase d'erreur qui va avec .

    Pour ne plus t'en soucier, dans ta classe sql quand tu fais une fonction pour obtenir une info de ta base tu l'écris comme si tu n'avais pas besoin d'info de l'appli, juste une requête sql normal et au moment ou tu vois que tu as besoin d'une info de ton application tu places cette valeur en paramètre de la fonction.

    Ainsi le soucis de la variable à obtenir ne sera pas dans la classe sql mais dans la classe ou tu appel la fonction pour faire en sorte qu'elle ai toutes les variables qui vont bien, cette couche supérieur qui est normalement un controleur ou ta vue, la où l'utilisateur effectue ses choix ou paramètrage. Pour conclure la classe SQL est une boite à outils.
    L'Etat est bien administré quand l'escalier de l'école est usé et que l'herbe croît sur celui du tribunal.

    Modérateur BI

  9. #9
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut
    Merci pour ton aide.

    j'ai bien essayer ton code mais, c'est toujours la même erreur.

    voici la capture d'écran avec l'erreur

    Images attachées Images attachées  

  10. #10
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    hummm, c'est autre part ton soucis mais il dit ici, dans ta fonction totalAnnuelTVA, tu appels une fonction de connexion à ta base SourceDonneSQlite.GetConnection(), cette classe ne serait elle pas static par hasard?
    L'Etat est bien administré quand l'escalier de l'école est usé et que l'herbe croît sur celui du tribunal.

    Modérateur BI

  11. #11
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par XxArchangexX Voir le message
    hummm, c'est autre part ton soucis mais il dit ici, dans ta fonction totalAnnuelTVA, tu appels une fonction de connexion à ta base SourceDonneSQlite.GetConnection(), cette classe ne serait elle pas static par hasard?
    Oui elle est static.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     public static Connection getConnection() {
        Connection con = null;
        try {
          Class<?> forName = Class.forName("org.sqlite.JDBC"); 
          String url = "jdbc:sqlite:Donnees/recuBase.db"; 
          String user = ""; 
          String password = "";/
          con = DriverManager.getConnection(url, user, password);
          Statement stmt = con.createStatement();
        }   catch (ClassNotFoundException ex) {
                Logger.getLogger(SourceDonneesSqlite.class.getName()).log(Level.SEVERE, null, ex);
            } catch (SQLException e) {
          Inter.SourceDonneesSqlite.arret("Connexion à la base de données impossible le pleutre !" + e);
        }		
    		return con;
    }

  12. #12
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    Tu as ta réponse, il faut que tu fasses ta connexion à la base hors de la fonction ou transformer ta méthode de connexion pour qu'elle ne soit plus static. C'est pour sa que je n'aime pas les static quand tu utilises un quelque part il en faut partout.

    Donc de mon avis SourceDonneSQlite ne doit pas être static,après sa se discute.

    PS : j'aime bien ton message en cas d'exception :p.
    L'Etat est bien administré quand l'escalier de l'école est usé et que l'herbe croît sur celui du tribunal.

    Modérateur BI

  13. #13
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut
    Ouai !

    j'ai pas d'idée pour l'instant

  14. #14
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut
    je continue mes tests.

    je viens de créer un projet sans la moindre méthode static. et j'ai quand même message d'erreur "no static ........"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    public class Classe_C {
     
        private void declarationTablo(){
        double [] monTablo;
        int nbMonTablo ; // pour ne pas fixer définitivement le tableau.
        Scanner lectureClavier = new Scanner(System.in);
        System.out.print("Combien Voulez-vous saisir de notes : ");
        nbMonTablo = lectureClavier.nextInt();
        monTablo = new double[2]; // déclaration de 3 cases mémoire..
        }
     
        public void envoyer(){
     
            declarationTablo();
        }
    }
    classe A ou j'appel.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public class A{
     
        public void appel() {
     
            Classe_C classe_c = new Classe_C();
            Classe_C.envoyer(); <= ICI LE MESSAGE D'ERREUR
     
        } 
    }
    Donc je ne comprend pas grand chose avec le static/non Static.

    D'après le bouquin d'Anne Tasso
    Le terme Static explique qu'une fonction ne peut-être copiée plusieurs fois en mémoire et elle ne peut être associée à un objet ni être instanciée.
    Mais cela ne me dit pas comment faire ?

  15. #15
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    Bonsoir,

    Si ta méthode n'est pas static tu ne peux pas l'appeler de "manière static"

    Code incorrect
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Classe_C objet = new Classe_C();
    Classe_C.envoyer(); <= ICI LE MESSAGE D'ERREUR

    Code correct (Normalement)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Classe_C objet = new Classe_C();
    objet.envoyer(); <= ICI j'ai remplacé la classe par l'objet

  16. #16
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut
    Et bien juste un grand MERCI à vous tous

  17. #17
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Points : 1 241
    Points
    1 241
    Par défaut
    Je me permet aussi de préciser qu'il existe des conventions de nommage en Java. Elles permettent d'augmenter la lisibilité du code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public Fenetre() {
    initComponents();
    this.setBounds(0x0, 0x0; 622, 481) // pour placer le fenêtre au centre et avec les bonnes dimensions 
    this.setBackground(Color.WHITE)
    
    sql Sql = new sql(); // le constructeur sans argument
    sql.totalannuelTVA();
    }
    Les noms de classes doivent commencer par une majuscule et les noms de variable par une minuscule.
    Dans ton cas ta classe doit donc s'appeler "Sql" et pas "sql". Et donc ton code d'appel de fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sql sql = new Sql(); // le constructeur sans argument
     sql.totalannuelTVA()
    Et la c'est bon. La méthode totalannuelTVA() n'as pas besoin d'être statique.

  18. #18
    Membre du Club Avatar de stefan73
    Homme Profil pro
    Formateur : OpenOffice.org/LibreOffice
    Inscrit en
    Mai 2003
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Formateur : OpenOffice.org/LibreOffice
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 105
    Points : 61
    Points
    61
    Par défaut
    Merci pour tes remarques et j'en tiendrai compte maintenant!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Appel méthode static
    Par stoner dans le forum Débuter
    Réponses: 5
    Dernier message: 14/12/2013, 00h40
  2. [1.x] [DOCTRINE] Problème appel méthode static
    Par Tyra3l dans le forum Symfony
    Réponses: 5
    Dernier message: 04/05/2011, 09h12
  3. [C#] Appel d'une fonction static impossible ?
    Par TheParadoX dans le forum Windows Forms
    Réponses: 2
    Dernier message: 17/08/2006, 11h23
  4. Débutante - Pb appel méthode static
    Par nmetais dans le forum Langage
    Réponses: 2
    Dernier message: 23/09/2005, 18h23
  5. [paint] Méthode déclaré en static
    Par Bugmaster dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 23/08/2004, 16h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo