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

Composants Java Discussion :

problème de JScrollPane hellp svp :?


Sujet :

Composants Java

  1. #1
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut problème de JScrollPane hellp svp :?
    Voilà je crée un hsitogramme et j'aimerais pouvoir avoir un scrollpane hrizontal puisque l'histogramme dépasse de la fenêtre mais je crois que j'ai un gros problème j'arrive pas à afficher les scroll bars!!!!!!

    Je vous poste les deux parties de code :
    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
    public class LectureImage extends JPanel
    {
    	public URL url;
    	public ArrayList teinte=new ArrayList();
    	public Graphics g;
    	public LectureImage(URL url)
    	{
    		this.url=url;
    	}
     
    	public void Connection()
    	{
    		try
    		{
    			URLConnection urlC= url.openConnection();
    			System.out.println(url);
    			//Accès au toolkit
    			java.awt.Toolkit toolkit = java.awt.Toolkit.getDefaultToolkit();
    			//lecture de l'image
    			Image image = toolkit.getImage(url);
    			//On s'assure que l'image est complètement chargée
    			image = new ImageIcon(image).getImage();
    			BufferedImage bufferedImage = new BufferedImage(image.getWidth(null),image.getHeight(null),BufferedImage.TYPE_INT_RGB );
    			g = bufferedImage.createGraphics();
    			g.drawImage(image,0,0,null);
    			g.dispose();
    			//Lecture de tous les pixels
    			int w = bufferedImage.getWidth();
    			int h = bufferedImage.getHeight();
    			int[] rgbs = new int[w*h];
    			//On crée l'espace neccessaire
    			bufferedImage.getRGB(0,0,w,h,rgbs,0,w);  
    			boolean ajout=true;
    			float testDoublon;
    			//parcours de mon tableau de pixels		 
    			for(int i=1;i<rgbs.length-1;i++)
    			{
    				int rouge = (rgbs[i-1] >>16 ) & 0xFF;
    				int vert = (rgbs[i-1] >> 8 ) & 0xFF;
    				int bleu = rgbs[i-1] & 0xFF; 
    				//permet de récupérer directement la teinte d'un pixel
    				testDoublon = (Color.RGBtoHSB(rouge,vert,bleu,null))[0];
    				int j=1;
    		        boolean ajouter=true;
    		        //permet de tester que je n'ai pas de doublons dans les teintes
    		        while(j<teinte.size()&&ajouter==true)
    		        {
    		           if((int)(testDoublon*1000)==(int)(((Float)teinte.get(j)).floatValue()*1000))
    		           {
    		              ajouter=false;
    		           }
    		           j++;
    		        }
    		        if(ajouter)
    		        {
    		             teinte.add(new Float(testDoublon));
    		        }
    			}
    			this.paintComponent(g);
    		}
    		catch (IOException e)
    		{
    			e.printStackTrace();
    		}
    	}
     
    	public void paintComponent(Graphics g)
        {
    		super.paintComponent(g);
    		int largeurBarre=1;
    		Graphics2D g2d=(Graphics2D)g;
    		g2d.scale(5,-5);
    		g2d.translate(0,-110);
    		for(int i=1;i<=teinte.size();i++)
    		{        
    			g2d.setColor(Color.getHSBColor(((Float)teinte.get(i-1)).floatValue(),1,1));
    			g2d.fillRect((i-1)*largeurBarre,0,largeurBarre,(int)(((Float)teinte.get(i-1)).floatValue()*100));
    		}
        }
    }

    et voici l'autre classe :
    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
    public class TP1Main extends JFrame{
    	public LectureImage li;
    	public TP1Main()
    	{
    		try 
    		{
    			this.setTitle("bloup");
    			this.pack();
    		    this.setSize(1024,768);		    
    		    li= new LectureImage(new URL("http://sironimo11.free.fr/Carte_SDA.jpg"));
    		    li.Connection();
     
    			this.add(li);
    		} 
    		catch (MalformedURLException e) {
    			e.printStackTrace();
    		}
    		}
     
    	public static void main(String[] args) 
    	{
    		new TP1Main().setVisible(true);
    	}
     
     
    }

    Si vous aviez la bonté de m'aider à résoudre ce problème de scroll bar se serait génial
    "Le calendrier, c'est la bureaucratie du temps." Quino

  2. #2
    Membre habitué Avatar de dr00w
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 116
    Points : 136
    Points
    136
    Par défaut
    Ben j'ai beau chercher dans ton code, j'vois pas ou tu mets ton panel dans un scrollpane ???? En plus, ne fait pas pack() avant d'ajouter des composants (dans ton constructeur TP1Main).

  3. #3
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    oups dsl voici le code du main avec le scroll pane mais les scroll bars n'apparaissent toujours pas

    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
    public class TP1Main extends JFrame{
    	public LectureImage li;
    	public TP1Main()
    	{
    		try 
    		{
    			this.setTitle("TP 1 de BD/WEB - Histogramme des teintes d'une image");			
    		    this.setSize(1024,768);		    
    		    li= new LectureImage(new URL("http://sironimo11.free.fr/Carte_SDA.jpg"));
    		    li.Connection();
    		    JScrollPane scroll = new JScrollPane(li);
    		    scroll.createHorizontalScrollBar();
    		    scroll.createVerticalScrollBar();
    			this.add(scroll);
     
    		} 
    		catch (MalformedURLException e) {
    			e.printStackTrace();
    		}
    		}
     
    	public static void main(String[] args) 
    	{
    		new TP1Main().setVisible(true);
    	}
     
     
    }
    "Le calendrier, c'est la bureaucratie du temps." Quino

  4. #4
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    personne ne s'y connait pour mettre un JScrollpane sur un JPanel?
    "Le calendrier, c'est la bureaucratie du temps." Quino

  5. #5
    Membre chevronné
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Points : 2 197
    Points
    2 197
    Par défaut
    Salut, j'utilise des JScrollPane pour mettre des JTable dedans, mais ce n'est peut-être pas si différent.
    Par contre je ne fait pas appelle aux méthodes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    scroll.createHorizontalScrollBar(); 
    scroll.createVerticalScrollBar();
    Essait de les enlever, je ne pense pas qu'elles soient utiles dans ton code.
    Désolé de ne pas pouvoir faire plus.

  6. #6
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    merci de ton aide mais même sans ces deux lignes, ça ne change pas mais encore merci d'avoir essayé
    "Le calendrier, c'est la bureaucratie du temps." Quino

  7. #7
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    c'est bon j'ai trouvé le bug tout seul il fallait faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    li.setPreferredSize(new Dimension(1024,768));
    à la place du
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    li.setSize(1024,768);
    Merci à tous ceux qui m'ont aidé et bonnes fêtes à tous

    Voici un bon ptit lien pour tous ceux qui aurait un jour le même problème que moi

    http://forum.java.sun.com/thread.jspa?threadID=691718
    "Le calendrier, c'est la bureaucratie du temps." Quino

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

Discussions similaires

  1. Problème de JScrollPane
    Par flames dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 12/05/2007, 21h21
  2. Problème avec jscrollpane
    Par mmb04 dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 11/05/2007, 13h51
  3. Problème de JScrollPane
    Par Bibou06 dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 08/09/2006, 18h30
  4. [C#] Problème d'héritage, aide svp :(
    Par choas dans le forum Windows Forms
    Réponses: 12
    Dernier message: 06/05/2006, 11h46
  5. Problème avec JScrollPane et label
    Par gl0be dans le forum Agents de placement/Fenêtres
    Réponses: 6
    Dernier message: 26/11/2004, 17h08

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