Questão Chuck Norris!

4 respostas
is.matt.r

No windows o codigo funcionar que eh uma beleza, mas qd colocar para rodar no ubuntu linux , os botões perdem as funcionalidades, pq sera?
Obs: To usando a IDE Eclipse
no meu java -version da:

java version "1.6.0_0"
IcedTea6 1.3.1 (6b12-0ubuntu6.1) Runtime Environment (build 1.6.0_0-b12)
OpenJDK Client VM (build 1.6.0_0-b12, mixed mode, sharing)

package PartesGraficas;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class SwingOtherButton extends JFrame {

  private JRadioButton rb1, rb2, rb3;

  private JCheckBox cb1, cb2, cb3;

  private JLabel lRadio, lCheck;



  public SwingOtherButton() {

    setTitle("Swing Other Buttons");

    getContentPane().setLayout(new GridLayout(1, 2));

    JPanel pRadio = new JPanel(new GridLayout(4, 1)),

           pCheck = new JPanel(new GridLayout(4, 1));

    ImageIcon selected = new ImageIcon("selected.gif"),

              deselected = new ImageIcon("deselected.gif");

    pRadio.add(rb1 = new JRadioButton("Alternativa 1"));

    pRadio.add(rb2 = new JRadioButton("Alternativa 2"));

    pRadio.add(rb3 = new JRadioButton("Alternativa 3", deselected));

    rb3.setSelectedIcon(selected);

    pRadio.add(lRadio = new JLabel("Sem Selecao"));

    pRadio.setBorder(BorderFactory.createEtchedBorder());

    getContentPane().add(pRadio);

    pCheck.add(cb1 = new JCheckBox("Alternativa 1"));

    pCheck.add(cb2 = new JCheckBox("Alternativa 2"));

    pCheck.add(cb3 = new JCheckBox("Alternativa 3", deselected));

    cb3.setSelectedIcon(selected);

    pCheck.add(lCheck = new JLabel("Sem Selecao"));

    pCheck.setBorder(BorderFactory.createEtchedBorder());

    getContentPane().add(pCheck);

    RadioItemListener ril = new RadioItemListener();    

    rb1.addItemListener(ril);

    rb2.addItemListener(ril);

    rb3.addItemListener(ril);

    CheckItemListener cil = new CheckItemListener();    

    cb1.addItemListener(cil);

    cb2.addItemListener(cil);

    cb3.addItemListener(cil);

    ButtonGroup bg = new ButtonGroup();

    bg.add(rb1);bg.add(rb2);bg.add(rb3);

    pack();

    setSize(300,100);

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  }

   class RadioItemListener implements ItemListener{

    public void itemStateChanged(ItemEvent e){

     JRadioButton rb = (JRadioButton)e.getSource();

     String item = rb.getText();

     lRadio.setText("Selecao: "+item.charAt(item.length()-1));

    }

   }

   class CheckItemListener implements ItemListener{

    public void itemStateChanged(ItemEvent e){

     String itens = cb1.isSelected()?"1 ":"";

     itens += cb2.isSelected()?"2 ":"";

     itens += cb3.isSelected()?"3 ":"";

     lCheck.setText("Selecao: "+itens);

    }

   }

   public static void main(String args[])

   {

    new SwingOtherButton().setVisible(true);

   }

}

4 Respostas

mvargens

Pois aqui funciona no ubuntu que é uma blz.

Você não é o primeiro a reclamar dessas coisas. Acho que o problema é o IcedTea6.
Eu uso o :
java version “1.6.0_10”
Java™ SE Runtime Environment (build 1.6.0_10-b33)
Java HotSpot™ Server VM (build 11.0-b15, mixed mode)

que é da sun. E sempre que ele existir vou usar ele independente de ter um open-source.

Remova esse pacote e instale o sun-java6-jdk

No windows você instalou o da sun.

is.matt.r

Como eu faço isso para remover e instalar?

rmendes08

Se já veio com o Ubuntu, eu acho que com o apt você consegue desinstalar.

mvargens

Para remover o icedtea:

sudo apt-get remove icedtea*

Para instalar o java da sun.
sudo apt-get install sun-java6-jdk sun-java6-plugin

Copie e cole no terminal um de cada vez.

Infelizmente não deixaram o JDK da sun disponível no Adicionar/Remover Aplicativos, somente o icedtea e a JVM estão lá. Senão seria por ali que faria isso.

Se vai usar o ubuntu aconselho a usar o forum e site abaixo tambem;
http://planeta.ubuntubrasil.org/

Criado 3 de março de 2009
Ultima resposta 3 de mar. de 2009
Respostas 4
Participantes 3