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

Java ME Discussion :

Image cliquable sur écran tactile


Sujet :

Java ME

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 23
    Points : 22
    Points
    22
    Par défaut Image cliquable sur écran tactile
    Bonjour à tous,

    cela fait quelques jours que je suis face à un problème, je désire rendre une image cliquable sur les téléphones tactiles.
    Je pensais avoir trouvé, mais en passant sur le téléphone, quand je sélectionne un item, l'action ne s'active pas (ni avec le stylet, ni avec les touches).

    Je vous mets le code ci-dessous.

    Merci pour votre aide.

    Cordialement ,
    Vincent Boquelet


    import java.io.IOException;
    import javax.microedition.midlet.*;
    import javax.microedition.lcdui.*;
    import javax.microedition.midlet.MIDlet;

    public class exemple extends MIDlet implements ItemCommandListener {
    private Command CMD, CMD2;
    private Display _display;
    private ImageItem imageItem;
    private ImageItem imageItem2;
    private StringItem texteItem;
    private Form _form1;
    private Command _commandExit;
    public exemple () {
    _display = Display.getDisplay(this);
    _form1 = new Form("Affichage d'une image");
    try {
    imageItem = new ImageItem("Image voulue : ", Image.createImage ("/66.png"), ImageItem.LAYOUT_CENTER | geItem.LAYOUT_NEWLINE_BEFORE
    | ImageItem.LAYOUT_NEWLINE_AFTER, "Macmillian USA");
    CMD = new Command("essai", Command.ITEM, 1);
    // imageItem.setDefaultCommand(CMD);
    imageItem.setItemCommandListener(this);
    _form1.append(imageItem);
    }
    catch (IOException e) {
    _form1.append (new StringItem
    ("Copyright", "Sams Publishing; Image not available:" + e));
    }
    StringItem texteItem = new StringItem("test ", "numero 1", Item.BUTTON);
    CMD2 = new Command("essai2", Command.ITEM,1);
    texteItem.setDefaultCommand(CMD2);
    texteItem.setItemCommandListener(this);
    _form1.append(texteItem);
    _commandExit = new Command("Exit", Command.SCREEN, 1);
    _form1.addCommand(_commandExit);
    }
    public void commandAction(Command c, Item i) {
    if (c == CMD && i == imageItem) {
    // Action a effectuer quand on click sur l'image
    try{
    imageItem2 = new ImageItem("Image recue : ", Image.createImage ("/66.png"), ImageItem.LAYOUT_CENTER | mageItem.LAYOUT_NEWLINE_BEFORE | ImageItem.LAYOUT_NEWLINE_AFTER, "Macmillian USA");
    _form1.append(imageItem2);
    }
    catch (IOException e) {
    _form1.append (new StringItem
    ("Copyright", "Sams Publishing; Image not available:" + e));
    }
    }
    else if(c == CMD2 ){
    _form1.append (new StringItem ("Default21: ", "Set", Item.BUTTON));
    }
    }
    // évènement exécuté au démarrage de l'application
    public void startApp() {
    _display.setCurrent(_form1);
    }
    // évènement exécuté lors de la mise en pause de l'application
    public void pauseApp() {
    }
    // évènement exécuté lorsque l'application se termine
    public void destroyApp(boolean unconditional) {
    }
    }

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 8
    Points : 10
    Points
    10
    Par défaut
    Salut,

    Je commence à peine en J2ME mais il ne faudrait pas ajouter des 2 commandes CMD et CMD2 à la form par hasard étant donné que c'est elle qui gère les évènements ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     _form1.addCommand(CMD);
    _form1.addCommand(CM2);

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 137
    Points : 158
    Points
    158
    Par défaut
    Sauf erreur de ma part, il faut appeler le setDefaultCommand pour appliquer une commande par défaut sur un item.

    Sur certains téléphones tu auras l'effet désiré, touche Enter = action sur l'image, mais la gestion des commandes étant assez hétérogène, le résultat n'est pas garanti.

    Les classes de construction d'IHM sont franchement casse pied. J'utilise pour ma part J4ME (j4me.org) pour les interfaces graphiques, ca permet d'avoir une interface qui marche toujours de la même manière (inclus la gestion des écrans tactiles)

    bon courage

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Ce que je fait personnellement pour faire ca, bien que n'étant pas encore un grand programmateur, j'utilise les fonction qui gère le tactile :


    protected void pointerDragged(int x, int y){ }
    protected void pointerPressed(int x, int y){ }
    protected void pointerReleased(int x, int y){ }

    et je fait un test par rapport à la position de l'image pour savoir si le point (x,y) se situe sur l'image.


    protected void pointerDragged(int x, int y){
    if(y>yPosImage && y<(yPosImage+yImageSize) && x>xPosImage && x<(xPosImage+xImageSize)){
    //instruction
    }
    }


    Voilà en espérant que ca puisse te servir.

Discussions similaires

  1. Image déformée sur écran
    Par Kirikiri2007 dans le forum Windows XP
    Réponses: 4
    Dernier message: 25/07/2010, 15h13
  2. [MySQL] Mettre une image cliquable sur un lien en PHP
    Par qmike dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 06/07/2010, 13h54
  3. Clavier sur écran tactile
    Par probo dans le forum Débuter
    Réponses: 2
    Dernier message: 13/02/2008, 21h06
  4. war3 sur écran tactile ^^
    Par r0d dans le forum PC
    Réponses: 6
    Dernier message: 28/06/2006, 17h39
  5. [Hardware] Image fantôme sur écran CRT
    Par Oui-Oui MB dans le forum Périphériques
    Réponses: 6
    Dernier message: 21/12/2005, 14h23

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