2009-09-27 6 views
0

Salut J'ai créé un curseur dans Java dans la plate-forme Linux. Mais le curseur a donné un aspect différent dans différents systèmes d'exploitation. Moyens dans Linux il semble un peu bon mais dans le système d'exploitation mac le curseur est différent. donc comment donner le même aspect à mon curseur quel que soit le système d'exploitationMon curseur dans Java ne donne pas le même aspect et la même sensation dans toutes les plate-formes

Le code est donné ci-dessous.

import javax.swing.JFrame; import javax.swing.JSlider; import javax.swing.Timer; 

public class Test { 

static int percent = 0; 

public static void main(String[] args) { 
    JFrame f = new JFrame(); 
    final JSlider s = new JSlider(); 
    f.getContentPane().add(s); 
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    f.pack(); 
    f.setVisible(true); 
    Timer time = new Timer(100, new ActionListener() { 

      @Override 
      public void actionPerformed(ActionEvent e) { 
        percent++; 
        if (percent>100) 
          percent = 0; 

// s.setMajorTickSpacing(10); //s.setMinorTickSpacing(1); //s.setPaintTicks(true); //s.setPaintLabels(true); 

// JScrollBar sb = s.getHorizontalScrollBar(); s.setValue((int)(s.getMaximum()*(percent/100.0))); s.setAutoscrolls(true); } }); time.start(); } 

} 

Merci Sunil kumar Sahoo

+0

Eh bien, le point de vue différent et ressenti, c'est qu'ils ont l'air différemment. mais vérifiez nimbus ou métal, ils sont censés ressembler presque à la même chose sur chaque plate-forme – clamp

+0

(Notez que vous ne devez pas utiliser Swing à partir d'un thread autre que AWT Event Dispatch Thread (EDT), y compris le thread principal. le standard: java.awt.EventQueue.invokeLater (nouveau Runnbale() {public void run() {...}}). –

Répondre

4

Vous pouvez changer l'apparence des composants Swing en utilisant

UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); 

ou d'autres valeurs définies par UIManager.getInstalledLookAndFeels();

Questions connexes