Como eu trabalho com o layout do cartão no construtor NetBeans GUI?
-
19-09-2019 - |
Pergunta
Alguém sabe como trabalhar com o layout do cartão na ferramenta Construtor de GUI do NetBeans? Quero mostrar painéis de acordo com a seleção JRadioButton
, então eu quero colocar isso usando o cartão de Layout.
Solução
Aqui está uma forma muito simples tutorial que pode começar você off na direção certa. Espero que seja útil.
Outras dicas
A Sun tutorial parece um bom lugar para começar a aprender sobre cartão de Layouts.
No que diz respeito NetBeans per se , simplesmente atribuir o layout do cartão para o componente que você deseja atribuir a (exemplo, um JPanel), dar-lhe um nome e, em seguida, para os componentes filhos JPanel (outros JPanels para exemplo), especifique sua propriedade cardName
. Para alternar de um para outro, você código-lo em um evento.
card.next(yourPanel);
vontade percorrer todos os componentes em seu mainpanel
seguida, vêm a primeira. Para mostrar um componente com seu próprio tentativa desejo seguinte (acho que se há 5 componentes e você está no 2 e quer mostrar primeiro, então você tem que passar por resto de todos no o exemplo de Vincent Ramdhanie, do JRL resposta é boa de acordo com a que dá um salto rápido para que você quer, mas aqui é uma outra maneira.
import javax.swing.JLabel;
import javax.swing.JPanel;
public class myJFrame extends javax.swing.JFrame {
private JPanel panel1, panel2;
/**
* Creates new form myJFrame
*/
public myJFrame() {
initComponents();
panel1=new JPanel();
panel2=new JPanel();
JLabel lb1=new JLabel("This is panel 1");
JLabel lb2=new JLabel("This is panel 2");
panel1.add(lb1);
panel2.add(lb2);
//make more if you want
// contentPanel.add(panel1);//show any of the panel first
}
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
buttonPanel1 = new javax.swing.JButton();
buttonPanel2 = new javax.swing.JButton();
contentPanel = new javax.swing.JPanel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
buttonPanel1.setText("Panel 1");
buttonPanel1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
buttonPanel1ActionPerformed(evt);
}
});
buttonPanel2.setText("Panel 2");
buttonPanel2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
buttonPanel2ActionPerformed(evt);
}
});
....
}
private void buttonPanel2ActionPerformed(java.awt.event.ActionEvent evt) {
contentPanel.removeAll();
contentPanel.add(panel2);
contentPanel.repaint();
contentPanel.revalidate();
}
private void buttonPanel1ActionPerformed(java.awt.event.ActionEvent evt) {
contentPanel.removeAll();
contentPanel.add(panel1);
contentPanel.repaint();
contentPanel.revalidate();
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/*
* Create and display the form
*/
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new myJFrame().setVisible(true);
}
});
}
private javax.swing.JButton buttonPanel1;
private javax.swing.JButton buttonPanel2;
private javax.swing.JPanel contentPanel;
private javax.swing.JPanel jPanel1;
}
Desta forma é usada quando você tem uma árvore e mostrar um painel ou componente em uma seleção árvore. Ele mostra directamente esse componente. Na árvore de adicionar um value change listener
e obter o item seleção e mostrar o painel apropriado.