bom galerinha continuando o tutorial de swing em java (sei que to devendo dois tuto para dois manos um de extensão do chrome e outro de requisição em perl com metodo post via socket, ainda vou fazer eles \o), bom galera nessa parte vamos aprender a criar checkbox e radiobutton, para começar a gente cria uma janela basica como de costume
vamos começar com checkbox que são caixas onde podemos selecionar uma opção, para criar uma checkbox a gente instancia um objeto do tipo JCheckBox (javax.swing.JCheckBox), podemos inclusive passar uma string para ela que sera o texto que vai ser exibido
a nossa janela tem um layout absoluto então precisamos especificar a posição e o tamanho do nosso checkbox na janela com o metodo setBound no objeto dela, depois usamos o metodo add no objeto da janela para adicionar o checkbox
podemos criar quantos checkbox a gente quiser
podemos ja iniciar um checkbox ja marcado bastando passar true para o metodo setSelected, ou desmarcar um via codigo passando false
é possivel mudar o texto dos checkbox usando o metodo setText (tambem podemos ler o texto com o metodo getText)
podemos checar se um determinado checkbox esta marcado com o metodo isSelected, ira retornar true caso esteja marcado ou false caso não esteja
com o metodo setForeground e setBackground mudamos tanto a cor do texto quanto a do fundo
com o metodo setFont alteramos a fonte e o tamanho dela
outro exemplo, agora mudando a cor e fonte
o radiobutton tem o funcionamento parecido com o checkbox, a sua diferença em java é a parte visual (em outras linguagens o radiobutton por padrão assume um funcionamento diferente do checkbox o que não ocorre em java)
em algumas linguagens de programação o que diferencia um checkbox de um radiobutton é o seu funcionamento, o checkbox permite marcar varios itens e o seu funcionamento é individual em cada um deles, ja o radiobutton permite marcar apenas um item e tem o funcionamento em grupo, para a gente fazer esse funcionamento em java temos que usar um objeto do tipo ButtonGroup (javax.swing.ButtonGroup), com isso sera possivel marcar apenas um unico radiobutton daquele grupo
bom galera é isso ate a proxima parte desse tutorial ^^
by kodo no kami
- Código:
package kodo;
import javax.swing.*;
public class Principal {
private static JFrame janela;
public static void main(String[] args){
janela = new JFrame("minha janela");
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
}
}
vamos começar com checkbox que são caixas onde podemos selecionar uma opção, para criar uma checkbox a gente instancia um objeto do tipo JCheckBox (javax.swing.JCheckBox), podemos inclusive passar uma string para ela que sera o texto que vai ser exibido
- Código:
package kodo;
import javax.swing.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
}
}
a nossa janela tem um layout absoluto então precisamos especificar a posição e o tamanho do nosso checkbox na janela com o metodo setBound no objeto dela, depois usamos o metodo add no objeto da janela para adicionar o checkbox
- Código:
package kodo;
import javax.swing.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
caixa1.setBounds(0,0,200,30);
janela.add(caixa1);
}
}
podemos criar quantos checkbox a gente quiser
- Código:
package kodo;
import javax.swing.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
private static JCheckBox caixa2;
private static JCheckBox caixa3;
private static JCheckBox caixa4;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
caixa2 = new JCheckBox("otaku");
caixa3 = new JCheckBox("programador");
caixa4 = new JCheckBox("gamer");
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
caixa1.setBounds(0,0,200,30);
caixa2.setBounds(0,40,200,30);
caixa3.setBounds(0,80,200,30);
caixa4.setBounds(0,120,200,30);
janela.add(caixa1);
janela.add(caixa2);
janela.add(caixa3);
janela.add(caixa4);
}
}
podemos ja iniciar um checkbox ja marcado bastando passar true para o metodo setSelected, ou desmarcar um via codigo passando false
- Código:
package kodo;
import javax.swing.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
caixa1.setBounds(0,0,200,30);
caixa1.setSelected(true);
janela.add(caixa1);
}
}
é possivel mudar o texto dos checkbox usando o metodo setText (tambem podemos ler o texto com o metodo getText)
- Código:
package kodo;
import javax.swing.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
caixa1.setBounds(0,0,200,30);
caixa1.setText("novo texto");
janela.add(caixa1);
}
}
podemos checar se um determinado checkbox esta marcado com o metodo isSelected, ira retornar true caso esteja marcado ou false caso não esteja
- Código:
package kodo;
import javax.swing.*;
import java.awt.event.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
private static JButton botao;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
botao = new JButton("verificar");
ActionListener evento = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(caixa1.isSelected()){
JOptionPane.showMessageDialog(null, "checkbox foi marcado");
}
else{
JOptionPane.showMessageDialog(null, "checkbox não foi marcado");
}
}
};
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
caixa1.setBounds(0,0,200,30);
botao.setBounds(10,40,120,40);
botao.addActionListener(evento);
janela.add(caixa1);
janela.add(botao);
}
}
com o metodo setForeground e setBackground mudamos tanto a cor do texto quanto a do fundo
- Código:
package kodo;
import javax.swing.*;
import java.awt.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
caixa1.setBounds(0,0,200,30);
caixa1.setForeground(Color.red);
caixa1.setBackground(Color.blue);
janela.add(caixa1);
}
}
com o metodo setFont alteramos a fonte e o tamanho dela
- Código:
package kodo;
import javax.swing.*;
import java.awt.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
Font minhafonte = new Font("arial",Font.BOLD,16);
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
caixa1.setBounds(0,0,200,30);
caixa1.setFont(minhafonte);
janela.add(caixa1);
}
}
outro exemplo, agora mudando a cor e fonte
- Código:
package kodo;
import javax.swing.*;
import java.awt.*;
public class Principal {
private static JFrame janela;
private static JCheckBox caixa1;
public static void main(String[] args){
janela = new JFrame("minha janela");
caixa1 = new JCheckBox("maior de idade");
Font minhafonte = new Font("arial",Font.BOLD,16);
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
janela.getContentPane().setBackground(Color.black);
caixa1.setBounds(0,0,200,30);
caixa1.setFont(minhafonte);
caixa1.setBackground(Color.gray);
caixa1.setForeground(Color.white);
janela.add(caixa1);
}
}
o radiobutton tem o funcionamento parecido com o checkbox, a sua diferença em java é a parte visual (em outras linguagens o radiobutton por padrão assume um funcionamento diferente do checkbox o que não ocorre em java)
- Código:
package kodo;
import javax.swing.*;
import java.awt.*;
public class Principal {
private static JFrame janela;
private static JRadioButton radio1;
private static JRadioButton radio2;
private static JRadioButton radio3;
public static void main(String[] args){
janela = new JFrame("minha janela");
radio1 = new JRadioButton("kodo no kami");
radio2 = new JRadioButton("fts315");
radio3 = new JRadioButton("flavio");
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
radio1.setBounds(0,0,200,30);
radio2.setBounds(0,30,200,30);
radio3.setBounds(0,60,200,30);
janela.add(radio1);
janela.add(radio2);
janela.add(radio3);
}
}
em algumas linguagens de programação o que diferencia um checkbox de um radiobutton é o seu funcionamento, o checkbox permite marcar varios itens e o seu funcionamento é individual em cada um deles, ja o radiobutton permite marcar apenas um item e tem o funcionamento em grupo, para a gente fazer esse funcionamento em java temos que usar um objeto do tipo ButtonGroup (javax.swing.ButtonGroup), com isso sera possivel marcar apenas um unico radiobutton daquele grupo
- Código:
package kodo;
import javax.swing.*;
import java.awt.*;
public class Principal {
private static JFrame janela;
private static JRadioButton radio1;
private static JRadioButton radio2;
private static JRadioButton radio3;
private static ButtonGroup grupo;
public static void main(String[] args){
janela = new JFrame("minha janela");
radio1 = new JRadioButton("kodo no kami");
radio2 = new JRadioButton("fts315");
radio3 = new JRadioButton("flavio");
grupo = new ButtonGroup();
janela.setBounds(400,350,350,200);
janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
janela.setVisible(true);
janela.setLayout(null);
radio1.setBounds(0,0,200,30);
radio2.setBounds(0,30,200,30);
radio3.setBounds(0,60,200,30);
grupo.add(radio1);
grupo.add(radio2);
grupo.add(radio3);
janela.add(radio1);
janela.add(radio2);
janela.add(radio3);
}
}
bom galera é isso ate a proxima parte desse tutorial ^^
by kodo no kami