startMiner - free and simple next generation Bitcoin mining software

segunda-feira, 26 de outubro de 2015

Convertendo Decimal para Binário,Octal e Hexadecimal em JAVA

package conversao;

/**
 *
 * @author Junior
 * 
 */

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.JFrame;
import javax.swing.JRadioButton;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Janela extends JFrame {
    JPanel p,p1,p2;
    JTextField t[];
    JLabel l[];
    JButton b[];
    JRadioButton rb[];
    ButtonGroup gr;
    String oct,hex,bin,bcd,dec;
    int decimal; 
    public Janela(){
        this.setLayout(null);
        inicializarComponentes();
        for(int i=0;i<rb.length;i++){
            p.add(rb[i]);
        }
        for(int i = 0 ;i<l.length;i++){
            p1.add(l[i]);
            p1.add(t[i]);
        }
        for(int i=0;i<b.length;i++){
            p2.add(b[i]);
        }
        this.add(p);
        this.add(p1);
        this.add(p2);
        this.setVisible(true);
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        this.setTitle("Conversão de Bases");
        this.setSize(300,250);
    }
    public void inicializarComponentes(){
        p = new JPanel();
        p.setBounds(0,0,250,40);
        p.setLayout(new FlowLayout());
        p1 = new JPanel();
        p1.setBounds(10,50,200,100);
        p2 = new JPanel();
        p2.setBounds(0,150,200,40);
        gr = new ButtonGroup();//criando grupo para add os radiobuttons
        rb = new JRadioButton[3];
        for(int i=0;i<rb.length;i++){//criando radiobuttons
            rb[i] = new JRadioButton();
            gr.add(rb[i]);// add radiobuttons no grupo
            if(i==0){
                rb[i].setText("Binario");
            }
            if(i==1){
                rb[i].setText("Octal");
            }
            if(i==2){
                rb[i].setText("Hexadecimal");
            }
        }
        t = new JTextField[2];
        l = new JLabel [2];
        for(int i=0;i<l.length;i++){//criando textfields e labels
            t[i] = new JTextField(16);
            l[i] = new JLabel();
            if(i==0){
                l[i].setText("Numero :");
            }
            if(i==1){
                l[i].setText("Resultado :");
            }
        }
        
        rb[0].addItemListener(new ItemListener(){//adcionando acões aos radiobuttons

            @Override
            public void itemStateChanged(ItemEvent ie) {
            try{
            dec = t[0].getText().toString();//pegando valor do textfield
            decimal = Integer.parseInt(dec,10);//convertendo para inteiro na base 10
            bin = Integer.toBinaryString(decimal);//convertendo para binario
            
            t[1].setText(""+bin);
            }
            
            catch(Exception erro){
                JOptionPane.showMessageDialog(null,"erro","Erro",0);
            
            }
            }
            
        });
        rb[1].addItemListener(new ItemListener(){

            @Override
            public void itemStateChanged(ItemEvent ie) {
            try{
            dec = t[0].getText().toString();//pegando valor do textfield
            decimal = Integer.parseInt(dec,10);//convertendo para inteiro na base 10
            oct = Integer.toOctalString(decimal); //convertendo para octal
            
            t[1].setText(""+oct);
            }
            catch(Exception erro){
                JOptionPane.showMessageDialog(null,"erro","Erro",0);
            }
            }
            
        });
        rb[2].addItemListener(new ItemListener(){

            @Override
            public void itemStateChanged(ItemEvent ie) {
            try{
            dec = t[0].getText().toString();//pegando o valor
            decimal = Integer.parseInt(dec,10);//convertend para inteiro na base 10
            hex = Integer.toHexString(decimal);//convertendo para hexadecimal
            
            t[1].setText(""+hex);
            }
            
            catch(Exception erro){
                JOptionPane.showMessageDialog(null,"erro","Erro",0);
            }
            }
            
        });
        b = new JButton[2];
        for(int i=0;i<b.length;i++){
            b[i]= new JButton();
            if(i==0){
                b[i].setText("Limpar");
                b[i].addActionListener(new ActionListener(){

                    @Override
                    public void actionPerformed(ActionEvent ae) {
                        t[0].setText("");//limpando caixa de texto
                        t[1].setText("");
                        gr.clearSelection();//limpando seleções
                    }
                   
                   
                });
            }
            if(i==1){
                b[i].setText("Sair");
                b[i].addActionListener(new ActionListener(){
                   @Override
                    public void actionPerformed(ActionEvent ae) {
                    System.exit(0);//saindo
                    }
                });
            }
        }
    }
    
    
}

Programa Rodando


Galera qualquer duvida e só comenta a e 

Nenhum comentário:

Postar um comentário