une partie de l'interface s'imprime temporairement dans une autre

une partie de l'interface s'imprime temporairement dans une autre - Java - Programmation

Marsh Posté le 22-03-2008 à 11:31:32    

Je dois débuguer une application en Java qui pose un problème lors du rafraichissement d'un graphique de type Graphics.
 
Voici le problème en image:
 
http://img516.imageshack.us/img516/2391/updgdl0.th.jpg
 
ensuite la zone surrimprimée affiche bien le graphique. Qu'est-ce qui peut provoquer cela? Quelles pistes me conseillez-vous pour contourner ce problème de rafraichissement?
 
ça ne le fait que dans cette zone.  
 
Voici le code qui agence les composants. Est-ce que cela peut venir de la façon dont sont placés les composants. A chaque fois que lon coche une case, ça met à jour un graphique en bas à droite.  
 
 

Code :
  1. super(new BorderLayout());
  2.       //on en aura besoin plus tard
  3.  this.table = table;
  4.  lborder = new EmptyBorder(5, 5, 5, 5);
  5.  this.setBorder(lborder);
  6.  linfoAttr = new JLabel();
  7.  linfoAttr.setBorder(lborder);
  8.  ldiscretise = (String)System.getProperty("ldattr.discretise" );
  9.  this.graphic = graphic;
  10.  // on veut avoir ?gauche, le nom de l'attr, son type et le graphique
  11.  add(linfoAttr, BorderLayout.NORTH);
  12.  // Partie inféieure
  13.  southPanel = new JPanel();
  14.  southPanel.setLayout(null);
  15.  // à gauche, ldiscretise, la combo, les paramères
  16.  westPanel = new JPanel(new BorderLayout());
  17.  westPanel.add(cb, BorderLayout.NORTH);
  18.  westPanel.add(params, BorderLayout.SOUTH);
  19.  westPanel.setBorder(lborder);
  20.  // Placer westPanel sur le JPanel methGraphPanel
  21.  westPanel.setBounds(15,15,(southPanel.getWidth()-30)*2/5,(southPanel.getHeight()-30));
  22.  Border etched = BorderFactory.createLineBorder(Color.LIGHT_GRAY, 1);
  23.  westPanel.setBorder(etched);
  24.  southPanel.add(westPanel,BorderLayout.WEST);
  25.  //bouton pour affiner
  26.  affinageBouton = new JButton(System.getProperty("baffiner" ));
  27.  //Le bouton est inactif, on l'activera uniquement lorsque les paramères seront suffisants
  28.  affinageBouton.setEnabled(false);
  29.  affinageBouton.addActionListener(this);
  30.  panelBouton = new JPanel();
  31.  graphicEtBouton = new JPanel(new BorderLayout());
  32.  panelBouton.add(affinageBouton);
  33.  graphicEtBouton.add(panelBouton , BorderLayout.SOUTH);
  34.  linfoGraphe = new JLabel(System.getProperty("tborder.graphique" ));
  35.  graphicEtBouton.add(linfoGraphe, BorderLayout.NORTH);
  36.  // Placer graphicEtBouton
  37.  graphicEtBouton.setBounds(20+westPanel.getWidth(),15,(southPanel.getWidth()-30)*3/5,(southPanel.getHeight()-30));
  38.  graphicEtBouton.setBorder(etched);
  39.  southPanel.add(graphicEtBouton , BorderLayout.EAST);
  40.  this.add(southPanel, BorderLayout.CENTER);


Merci d'avance...  
 
 
 
PS: je débute :?

Reply

Marsh Posté le 22-03-2008 à 11:31:32   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed