Galera criei um JInternalFrame e observei que ele veio com uma barra de menu como padrão, onde neste menu tem Restaurar, mover, tamanho, minimizar, maximizar e Fechar. Mas as opcoes estão desabilitadas, como faço para habilitá-las? ou preciso implementar?
Queria aproveitar a opção Sair da barra de menu já existente para fechá-lo, ao invés de criar um botão…
Renê bicho doido, ei homi. Olha por padrão creio que elas já venham ativadas. Deixa eu fazer um teste aqui!
Renê cara tô emocionado em te encontrar por aqui, tu és do jegue mesmo.
renê creio que tua bronca seja para fechar certo?
Rene olha uma solução seria adicionar um InternalFrameListener ao JInternalFrame e no método internalFrameClosing tu coloca um setVisible(false);
Oxem, e ai urbanno ! kkkk
É queria fechá-lo aproveitando o menuBar que ja vem no InternalFrame, mas as opcoes estão cinza…
tentei por esse método ai mas n consegui… tem algum exemplo dele por ai urbanno? por hora estou fechando por um botao usando doDefaultCloseAction()
Tem um exemplo de codigo ae urbanno?
Rene rapaz eu tenho um exemplo aqui.
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.ArrayList;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.event.InternalFrameEvent;
import javax.swing.event.InternalFrameListener;
import javax.swing.table.DefaultTableModel;
import contato.Banco_contato;
import contato.Contato;
public class TelaListContato extends JInternalFrame implements ActionListener {
private JTable tabela;
private JScrollPane painel;
private JButton voltar;
private JTextField buscar;
private JLabel tit_buscar;
ArrayList<Contato> contato = new ArrayList<Contato>();
public TelaListContato() throws Exception {
super("Tela", true, true, true, true);
addInternalFrameListener(new InternalFrameListener() {
public void internalFrameOpened(InternalFrameEvent arg0) {}
public void internalFrameIconified(InternalFrameEvent arg0) {}
public void internalFrameDeiconified(InternalFrameEvent arg0) {}
public void internalFrameDeactivated(InternalFrameEvent arg0) {}
public void internalFrameClosing(InternalFrameEvent arg0) {
//Aqui que é adicionada a parada.
setVisible(false);
}
public void internalFrameClosed(InternalFrameEvent arg0) {}
public void internalFrameActivated(InternalFrameEvent arg0) {}
});
contato = Banco_contato.listar();
painel = new JScrollPane();
painel.setBounds(130, 90, 500, 300);
add(painel);
tabela = new JTable();
tabela.setModel(new DefaultTableModel(
listar(contato),
new String[] { "Local", "Número" }));
painel.setViewportView(tabela);
voltar = new JButton("VOLTAR");
voltar.setBounds(570, 418, 120, 50);
add(voltar);
voltar.addActionListener(this);
voltar.setIcon(new ImageIcon(getClass().getResource("back.png")));
buscar = new JTextField();
buscar.setBounds(245,64,300,25);
buscar.addKeyListener(new KeyListener() {
public void keyTyped(KeyEvent arg0) {}
public void keyReleased(KeyEvent arg0) {
try {
recriar_tabela(buscar.getText());
} catch (Exception e1) {
}
}
public void keyPressed(KeyEvent e) {
}
});
add(buscar);
tit_buscar = new JLabel("BUSCAR: ");
tit_buscar.setBounds(190,65, 60, 20);
add(tit_buscar);
setLocation(50, 50);
setSize(600, 400);
setLayout(null);
setDefaultCloseOperation(JInternalFrame.EXIT_ON_CLOSE);
setVisible(false);
}
public String[][] listar(ArrayList<Contato> contato){
String temp[][] = new String[contato.size()][2];
for(int i=0;i<contato.size();i++){
for(int j=0;j<2;j++){
if(j==0)
temp[i][j]=contato.get(i).getLocal();
else{
temp[i][j]="("+contato.get(i).getDdd()+") "+contato.get(i).getNumero();
temp[i][j]=temp[i][j].substring(0,9)+"-"+temp[i][j].substring(9,13);
}
}
}
return temp;
}
public void recriar_tabela(String local) throws Exception{
tabela.setModel(new DefaultTableModel(
listar(Banco_contato.listar_especial(local)),
new String[] { "Local", "Número" }));
painel.setViewportView(tabela);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() == voltar){
dispose();
}
}
}
Qualquer dúvida é só gritar.
Eita urbanno tu é do jegue msm !! Fico top demaaais biixxxo VLWWW !!
[RESOLVIDO]
Deu certo no meu valeu…obrigado…