Galera, sou iniciante em JAVA, e estou desenvolvendo uma aplicação através do eclipse, usando um plugin visual editor…
Criei alguns RadioButtons, mas eles são independentes… Gostaria de agrupá-los para poder selecionar apenas um deles, e não todos… Ou seja, marquei um, desmarcou os outros.
Procurei por ButtonGroup na Internet e até achei algumas coisas, mas não consegui implementá-lo no meu código, apresenta erro…
Poderiam me ajudar? O código da minha interface é o seguinte:
import javax.swing.JPanel;
import javax.swing.JDialog;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Point;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.BorderFactory;
import java.awt.Font;
import javax.swing.JTextPane;
import javax.swing.JRadioButton;
import javax.swing.JCheckBox;
import javax.swing.JScrollPane;
import java.awt.event.KeyEvent;
public class PingNow extends JDialog {
private JPanel frmPrincipal = null;
private JPanel frmLocal = null;
private JTextField txtLocal = null;
private JTextPane labLocal = null;
private JPanel frmEquipamento = null;
private JPanel frmEstacaoLocaDDR = null;
private JPanel frmTesteContinuo = null;
private JButton btnTesteAvancado = null;
private JButton btnTestar = null;
private JButton btnParar = null;
private JButton btnNovoTeste = null;
private JButton btnAjuda = null;
private JTextPane labEquipamento = null;
private JRadioButton optServidor = null;
private JRadioButton optAutoAtendimento = null;
private JRadioButton optRetaguarda = null;
private JRadioButton optCaixa = null;
private JTextField txtEstacaoLocaDDR = null;
private JTextPane labEstacaoLocaDDR = null;
private JCheckBox optTesteContinuo = null;
private JTextPane labTesteContinuo = null;
private JScrollPane txtResultados = null;
private JPanel frmResultados = null;
public PingNow() {
super();
initialize();
}
private JPanel getFrmPrincipal() {
if (frmPrincipal == null) {
frmPrincipal = new JPanel();
frmPrincipal.setLayout(null);
frmPrincipal.setBackground(Color.white);
frmPrincipal.add(getFrmLocal(), null);
frmPrincipal.add(getFrmEquipamento(), null);
frmPrincipal.add(getFrmEstacaoLocaDDR(), null);
frmPrincipal.add(getFrmTesteContinuo(), null);
frmPrincipal.add(getBtnTesteAvancado(), null);
frmPrincipal.add(getBtnTestar(), null);
frmPrincipal.add(getBtnParar(), null);
frmPrincipal.add(getBtnNovoTeste(), null);
frmPrincipal.add(getBtnAjuda(), null);
frmPrincipal.add(getFrmResultados(), null);
}
return frmPrincipal;
}
private JPanel getFrmLocal() {
if (frmLocal == null) {
frmLocal = new JPanel();
frmLocal.setLayout(null);
frmLocal.setSize(new Dimension(100, 85));
frmLocal.setBackground(new Color(255, 254, 254));
frmLocal.setBorder(BorderFactory.createLineBorder(Color.black, 1));
frmLocal.setLocation(new Point(12, 11));
frmLocal.add(getTxtLocal(), null);
frmLocal.add(getLabLocal(), null);
}
return frmLocal;
}
private JTextField getTxtLocal() {
if (txtLocal == null) {
txtLocal = new JTextField();
txtLocal.setLocation(new Point(30, 34));
txtLocal.setToolTipText("Digite o código do local com 4 dígitos.");
txtLocal.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
txtLocal.setHorizontalAlignment(JTextField.CENTER);
txtLocal.setColumns(0);
txtLocal.setSize(new Dimension(40, 19));
}
return txtLocal;
}
private JTextPane getLabLocal() {
if (labLocal == null) {
labLocal = new JTextPane();
labLocal.setEditable(false);
labLocal.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
labLocal.setSize(new Dimension(95, 18));
labLocal.setLocation(new Point(2, 1));
labLocal.setText("Código do Local");
}
return labLocal;
}
private JPanel getFrmEquipamento() {
if (frmEquipamento == null) {
frmEquipamento = new JPanel();
frmEquipamento.setLayout(null);
frmEquipamento.setBorder(BorderFactory.createLineBorder(Color.black, 1));
frmEquipamento.setLocation(new Point(154, 11));
frmEquipamento.setSize(new Dimension(161, 85));
frmEquipamento.setBackground(Color.white);
frmEquipamento.add(getLabEquipamento(), null);
frmEquipamento.add(getOptServidor(), null);
frmEquipamento.add(getOptRetaguarda(), null);
frmEquipamento.add(getOptAutoAtendimento(), null);
frmEquipamento.add(getOptCaixa(), null);
}
return frmEquipamento;
}
private JPanel getFrmEstacaoLocaDDR() {
if (frmEstacaoLocaDDR == null) {
frmEstacaoLocaDDR = new JPanel();
frmEstacaoLocaDDR.setLayout(null);
frmEstacaoLocaDDR.setLocation(new Point(356, 11));
frmEstacaoLocaDDR.setBorder(BorderFactory.createLineBorder(Color.black, 1));
frmEstacaoLocaDDR.setBackground(Color.white);
frmEstacaoLocaDDR.setSize(new Dimension(120, 85));
frmEstacaoLocaDDR.add(getTxtEstacaoLocaDDR(), null);
frmEstacaoLocaDDR.add(getLabEstacaoLocaDDR(), null);
}
return frmEstacaoLocaDDR;
}
private JPanel getFrmTesteContinuo() {
if (frmTesteContinuo == null) {
frmTesteContinuo = new JPanel();
frmTesteContinuo.setLayout(null);
frmTesteContinuo.setLocation(new Point(520, 11));
frmTesteContinuo.setBackground(Color.white);
frmTesteContinuo.setBorder(BorderFactory.createLineBorder(Color.black, 1));
frmTesteContinuo.setSize(new Dimension(110, 85));
frmTesteContinuo.add(getOptTesteContinuo(), null);
frmTesteContinuo.add(getLabTesteContinuo(), null);
}
return frmTesteContinuo;
}
private JButton getBtnTesteAvancado() {
if (btnTesteAvancado == null) {
btnTesteAvancado = new JButton();
btnTesteAvancado.setLocation(new Point(153, 100));
btnTesteAvancado.setText("Teste Avançado");
btnTesteAvancado.setToolTipText("Use esta opção para pingar um IP específico.");
btnTesteAvancado.setSize(new Dimension(161, 25));
}
return btnTesteAvancado;
}
private JButton getBtnTestar() {
if (btnTestar == null) {
btnTestar = new JButton();
btnTestar.setLocation(new Point(480, 240));
btnTestar.setText("Testar");
btnTestar.setToolTipText("Clique neste botão para iniciar os testes.");
btnTestar.setSize(new Dimension(73, 25));
}
return btnTestar;
}
private JButton getBtnParar() {
if (btnParar == null) {
btnParar = new JButton();
btnParar.setLocation(new Point(560, 240));
btnParar.setText("Parar");
btnParar.setToolTipText("Clique neste botão para parar os testes.");
btnParar.setSize(new Dimension(73, 25));
}
return btnParar;
}
private JButton getBtnNovoTeste() {
if (btnNovoTeste == null) {
btnNovoTeste = new JButton();
btnNovoTeste.setLocation(new Point(480, 272));
btnNovoTeste.setText("Novo Teste");
btnNovoTeste.setToolTipText("Clique neste botão para efetuar um novo teste.");
btnNovoTeste.setSize(new Dimension(153, 25));
}
return btnNovoTeste;
}
private JButton getBtnAjuda() {
if (btnAjuda == null) {
btnAjuda = new JButton();
btnAjuda.setLocation(new Point(11, 389));
btnAjuda.setText("Ajuda");
btnAjuda.setToolTipText("Abre a documentação de ajuda.");
btnAjuda.setSize(new Dimension(73, 25));
}
return btnAjuda;
}
private JTextPane getLabEquipamento() {
if (labEquipamento == null) {
labEquipamento = new JTextPane();
labEquipamento.setText("Equipamento");
labEquipamento.setEditable(false);
labEquipamento.setLocation(new Point(42, 1));
labEquipamento.setSize(new Dimension(80, 21));
labEquipamento.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
}
return labEquipamento;
}
private JRadioButton getOptServidor() {
if (optServidor == null) {
optServidor = new JRadioButton();
optServidor.setText("Servidor");
optServidor.setBackground(Color.white);
optServidor.setSize(new Dimension(159, 12));
optServidor.setLocation(new Point(1, 23));
optServidor.setMnemonic(KeyEvent.VK_UNDEFINED);
optServidor.setName("optServidor");
optServidor.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
}
return optServidor;
}
private JRadioButton getOptAutoAtendimento() {
if (optAutoAtendimento == null) {
optAutoAtendimento = new JRadioButton();
optAutoAtendimento.setText("Auto-Atendimento");
optAutoAtendimento.setBackground(Color.white);
optAutoAtendimento.setSize(new Dimension(159, 12));
optAutoAtendimento.setLocation(new Point(1, 37));
optAutoAtendimento.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
}
return optAutoAtendimento;
}
private JRadioButton getOptRetaguarda() {
if (optRetaguarda == null) {
optRetaguarda = new JRadioButton();
optRetaguarda.setText("Terminal de Retaguarda");
optRetaguarda.setBackground(Color.white);
optRetaguarda.setSize(new Dimension(159, 12));
optRetaguarda.setLocation(new Point(1, 51));
optRetaguarda.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
}
return optRetaguarda;
}
private JRadioButton getOptCaixa() {
if (optCaixa == null) {
optCaixa = new JRadioButton();
optCaixa.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
optCaixa.setBackground(Color.white);
optCaixa.setSize(new Dimension(159, 12));
optCaixa.setLocation(new Point(1, 65));
optCaixa.setText("Terminal de Caixa");
}
return optCaixa;
}
private JTextField getTxtEstacaoLocaDDR() {
if (txtEstacaoLocaDDR == null) {
txtEstacaoLocaDDR = new JTextField();
txtEstacaoLocaDDR.setToolTipText("Digite o número da estação ou do LocaDDR com 3 dígitos.");
txtEstacaoLocaDDR.setSize(new Dimension(40, 19));
txtEstacaoLocaDDR.setHorizontalAlignment(JTextField.CENTER);
txtEstacaoLocaDDR.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
txtEstacaoLocaDDR.setLocation(new Point(41, 34));
}
return txtEstacaoLocaDDR;
}
private JTextPane getLabEstacaoLocaDDR() {
if (labEstacaoLocaDDR == null) {
labEstacaoLocaDDR = new JTextPane();
labEstacaoLocaDDR.setText("Estação / LocaDDR");
labEstacaoLocaDDR.setEditable(false);
labEstacaoLocaDDR.setSize(new Dimension(113, 21));
labEstacaoLocaDDR.setLocation(new Point(3, 1));
labEstacaoLocaDDR.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
}
return labEstacaoLocaDDR;
}
private JCheckBox getOptTesteContinuo() {
if (optTesteContinuo == null) {
optTesteContinuo = new JCheckBox();
optTesteContinuo.setBackground(Color.white);
optTesteContinuo.setSize(new Dimension(21, 21));
optTesteContinuo.setToolTipText("Marque esta caixa caso deseje executar o teste continuamente.");
optTesteContinuo.setLocation(new Point(44, 32));
}
return optTesteContinuo;
}
private JTextPane getLabTesteContinuo() {
if (labTesteContinuo == null) {
labTesteContinuo = new JTextPane();
labTesteContinuo.setText("Teste Contínuo");
labTesteContinuo.setEditable(false);
labTesteContinuo.setSize(new Dimension(88, 21));
labTesteContinuo.setLocation(new Point(11, 1));
labTesteContinuo.setFont(new Font("Microsoft Sans Serif", Font.PLAIN, 12));
}
return labTesteContinuo;
}
private JScrollPane getTxtResultados() {
if (txtResultados == null) {
txtResultados = new JScrollPane();
txtResultados.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
txtResultados.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
txtResultados.setBackground(Color.white);
txtResultados.getViewport().setBackground(Color.white);
txtResultados.setSize(new Dimension(441, 121));
txtResultados.setLocation(new Point(8, 9));
txtResultados.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
}
return txtResultados;
}
private JPanel getFrmResultados() {
if (frmResultados == null) {
frmResultados = new JPanel();
frmResultados.setLayout(null);
frmResultados.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
frmResultados.setSize(new Dimension(457, 139));
frmResultados.setLocation(new Point(16, 240));
frmResultados.setBackground(Color.white);
frmResultados.add(getTxtResultados(), null);
}
return frmResultados;
}
private void initialize() {
this.setTitle("Ping Now 1.1");
this.setContentPane(getFrmPrincipal());
this.setBackground(Color.white);
this.setSize(new Dimension(649, 458));
this.setLocation(new Point(0, 0));
this.setResizable(false);
this.setVisible(true);
}
}
Muito grato a quem puder me ajudar! Isso é muito importante para mim… Obrigado!