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

Applets Java Discussion :

Convertion d'une grosse Appli


Sujet :

Applets Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 11
    Par défaut Convertion d'une grosse Appli
    Bonjour,

    J'ai pour projet de modifier une grosse appli (il s'agit d'un lecteur de tablature en java: Dguitar ) pour en faire un applet.
    Le dev du projet avait fait un applet de son appli mais pas dans les nouvelles versions.
    Cependant je suis loin d'être un expert et la tâche n'est pas aussi simple que je le penser !

    J'ai parcouru la plupart des docs/forum traitant du sujet sans réussir à avancer beaucoup.
    J'ai commencé par en mettant un à la place de et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public static void main(String args[])
    en Bien entendu cela ne marche pas (ce qui est bien normal )
    java.lang.Error: Unresolved compilation problems:
    The method setTitle(String) is undefined for the type DGuitar
    The method pack() is undefined for the type DGuitar
    The method dispose() is undefined for the type DGuitar
    The method setIconImage(Image) is undefined for the type DGuitar
    MAXIMIZED_BOTH cannot be resolved
    MAXIMIZED_BOTH cannot be resolved
    The method setDefaultCloseOperation(int) is undefined for the type DGuitar
    The method addWindowListener(new WindowAdapter(){}) is undefined for the type DGuitar
    The constructor SongOptionsListener(DGuitar, DGuitar) is undefined
    The method pack() is undefined for the type DGuitar
    The constructor MidiTest(DGuitar, boolean) is undefined
    The method setTitle(String) is undefined for the type DGuitar
    The method setTitle(String) is undefined for the type DGuitar

    at dguitar.gui.DGuitar.<init>(DGuitar.java:871)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at java.lang.Class.newInstance0(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    at sun.applet.AppletPanel.createApplet(Unknown Source)
    at sun.applet.AppletPanel.runLoader(Unknown Source)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    Je pense que pas mal d'erreur viennent du fais que l'appli demande des variables système donc ca foire avec une applet.
    Mais après je sais pas trop.

    Qu'en pensez vous ?
    Est-ce faisable sans refaire le code en entier ?

    Merci par avance.

  2. #2
    Membre émérite Avatar de yann2
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Mai 2004
    Messages : 897
    Par défaut
    Salut

    Je joue également de la guitare ! Donc ton problème m'intéresse.

    Les erreurs que tu nous as montrées sont dûes au passage de JFrame à JApplet.

    La classe JFrame fournit des méthodes comme setTitle(String), pack() mais la classe JApplet n'a pas ces méthodes (d'où les exceptions).

    Je veux bien t'aider à transformer l'appli en applet. Si tu as le temps, nous pouvons nous contacter ce week end par mail et on voit ce qu'on peut faire.

    yann

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 234
    Par défaut
    En terme de compatibilité la JApplet est moins interessante que l'applet de base.

    De plus je te conseille puisque tu n'a jamais developpé d'applet auparavant de commencer par faire un code simple (genre afficher un bouton dans un navigateur). En effet de nombreux problèmes se posent lorque l'on réalise ce type d'application :
    le temps de chargement doit être court;
    les applets si elles doivent effectuer beaucoup d'opération doivent sortir de la sandBox (regarde signature d'une applet).
    Je te conseille de travailler avec un environnement eclispe : une fois configurer correctement il te permet de compiler en même temps que tu travailles le code (ce qui te soulignes tes erreurs, tes warning) etc. De nombreux tutoriels permettent d'apprendre beaucoup sur les applets.

    Il y'a une quinzaine de jours j'ai commence à bosser sur une vieille appli utilisant des applets (deja) et en procédant avec des programmes simples dabbord, et puis en mettant en place les solutions dans l'application permet d'avancer beaucoup plus vite (et de mieux se rendre compte des problèmes);

    Init() est utilisé pour l'initialisation de paramètre ce n'est pas un main : c'est une méthode qui n'est exécutée qu'une fois (par exemple quand on fait un actualisé elle n'est pas rappelé).
    Start() correspond plus à ce que tu veux car elle doit contenir le code principal à la maniere d'un main et est rapelle à chaque fois.
    renseigne toi sur les méthode paint et repaint

Discussions similaires

  1. lancer une appli a travers une autre appli
    Par tazamorte dans le forum C++Builder
    Réponses: 3
    Dernier message: 16/04/2004, 12h08
  2. Réponses: 2
    Dernier message: 23/03/2004, 13h23
  3. [Revue de code] Quels outils pour de grosses applis?
    Par franckR dans le forum Choisir un environnement de développement
    Réponses: 1
    Dernier message: 21/03/2004, 11h03
  4. convertion d'une chaine binaire
    Par Mister dans le forum C
    Réponses: 3
    Dernier message: 03/10/2003, 23h39
  5. Réponses: 14
    Dernier message: 17/03/2003, 19h31

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