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

Agents de placement/Fenêtres Java Discussion :

Pb Applet Scrollbar et KeyListener


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 705
    Points : 934
    Points
    934
    Par défaut Pb Applet Scrollbar et KeyListener
    Bonjour

    Je n'arrive pas à obtenir les touches clavier lorsque j'ai des ScrollBar de définie dans mon applet ?
    Ou est mon erreur je ne la vois pas !!!
    Merci d'avance
    Philippe

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
     
    package scroll;
     
    import java.applet.Applet;
     
    import java.awt.*;
    import java.awt.event.*;
    import java.util.*;
     
    public class EssaiAscenseur4 extends Applet  implements AdjustmentListener,
    	      MouseListener
                  ,KeyListener
                  ,ComponentListener
     
    {
      int decalageH=0;
      int decalageV=0;
      int largeurFenetre=300;
      int hauteurFenetre=200;
      Vector memoire=new Vector();
      Scrollbar vbar=new Scrollbar
      (Scrollbar.VERTICAL,0,(int)(hauteurFenetre * 0.9),0,1000);
      Scrollbar hbar=new Scrollbar
      (Scrollbar.HORIZONTAL,0,(int)(largeurFenetre * 0.9),0,500);
      Color couleur=Color.magenta;
     
     
     
            public void init() {
                try {
                    jbInit();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
     
        private void jbInit() throws Exception {
     
        addMouseListener(this);
        addKeyListener(this);
        addComponentListener(this);
        setLayout(new BorderLayout());
        vbar.addAdjustmentListener(this);
        hbar.addAdjustmentListener(this);
        vbar.setBlockIncrement((int)(hauteurFenetre * 0.9));
        hbar.setBlockIncrement((int)(largeurFenetre*0.9));
     
        //Fonctionne des que ces deux lignes sont enleve ou si on extends de frame et pas de APPLET
        add("East",vbar);
        add("South",hbar);
     
     
        setForeground(couleur);
      }
     
    // Pour gerer le Decalage
      public void adjustmentValueChanged(AdjustmentEvent evt)
      {
        if (evt.getSource()==vbar)  decalageV=evt.getValue();
        else if (evt.getSource()==hbar) decalageH=evt.getValue();
        repaint();
      }
     
      public void mousePressed(MouseEvent evt) 
      {
        CercleSitue c;
        Graphics g=getGraphics();
        int x=evt.getX(),y=evt.getY();
     
        c=new CercleSitue(10,x+decalageH,y+decalageV);
        g.fillOval(x-20,y-20,40,40);
        memoire.addElement(c);
      }
      public void mouseReleased(MouseEvent evt)  {}
      public void mouseEntered(MouseEvent evt)  {}
      public void mouseExited(MouseEvent evt)  {}
      public void mouseClicked(MouseEvent evt) {}
     
     
        public void   keyReleased(KeyEvent evt) {
        }
     
        public void keyPressed(KeyEvent evt) {
           System.out.println("PRESSED");
        }
     
        public void keyTyped(KeyEvent evt) {
     
        }
     
     
     
     
        public void componentResized(ComponentEvent e) 
        { 
        System.out.println("ddd screen height="+Toolkit.getDefaultToolkit().getScreenSize().getHeight()+" screen width="+Toolkit.getDefaultToolkit().getScreenSize().getWidth());
     
        }
     
        public void componentHidden(ComponentEvent e) {
        }
     
        public void componentShown(ComponentEvent e) {
        }
     
        public void componentMoved(ComponentEvent e) {
        }
     
     
     
      public void paint(Graphics g)
      {
        Enumeration lesCercles=memoire.elements();
        CercleSitue c;
     
        while(lesCercles.hasMoreElements())
          {	
    	c=(CercleSitue)lesCercles.nextElement();
    	g.fillOval(c.x-20-decalageH,c.y-20-decalageV,40,40);
          }
      }
     
      public static void main (String[] args)
      {
     
         EssaiAscenseur4 applet = new  EssaiAscenseur4();
        Frame frame = new Frame();
        frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } } );
        frame.add(applet, BorderLayout.CENTER);
        frame.setTitle( "Applet Frame" );
        applet.init();
        applet.start();
        frame.setSize(800, 800);
        Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension frameSize = frame.getSize();
        frame.setLocation((d.width-frameSize.width)/2, (d.height-frameSize.height)/2);
        frame.setVisible(true);
    }
        }

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 705
    Points : 934
    Points
    934
    Par défaut
    Bonsoir j'ai oublié une classe interne dans mon exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public class CercleSitue
    {
      int rayon, x, y;
     
      public CercleSitue(int rayon,int x,int y)
      {
        this.rayon=rayon;
        this.x=x;
        this.y=y;
      }
    }
    Merci d'avance

    Philippe

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 705
    Points : 934
    Points
    934
    Par défaut
    Bonjour

    Je devrais m'en sortir avec un ScrollPane

    Philippe

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

Discussions similaires

  1. [Listbox] ScrollBar Horizontal
    Par haleem dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 20/04/2005, 07h53
  2. prb applet gestion de KeyListener
    Par kikoufr dans le forum Applets
    Réponses: 3
    Dernier message: 07/11/2004, 12h11
  3. [Kylix] applets?
    Par mickywicky dans le forum EDI
    Réponses: 6
    Dernier message: 11/11/2002, 12h02
  4. [VB6][Formulaire]Appliquer un Scrollbar a une Form
    Par Boil dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 09/11/2002, 03h51
  5. [visuel]ScrollBar et StatusBar
    Par psl dans le forum Composants VCL
    Réponses: 2
    Dernier message: 24/08/2002, 21h28

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