import java.awt.BorderLayout;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.net.URL;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTextArea;
import javax.swing.JToolBar;
public class Validadorr extends JFrame implements ActionListener, KeyListener{
private ImageIcon imagem_abrir = new ImageIcon(getClass().getResource("/imagens/abrir.png"));
private ImageIcon imagem_sair = new ImageIcon(getClass().getResource("/imagens/sair.png"));
private ImageIcon imagem_txt = new ImageIcon(getClass().getResource("/imagens/arquivo.png"));
private ImageIcon imagem_avancar = new ImageIcon(getClass().getResource("/imagens/avancar.png"));
private ImageIcon imagem_voltar = new ImageIcon(getClass().getResource("/imagens/voltar.png"));
private JPanel pl = new JPanel(new BorderLayout());
private JTextArea ta_texto = new JTextArea();
private JMenuBar mnuBarra = new JMenuBar();
private JToolBar toolbar = new JToolBar("Ferramentas");
private JScrollPane scrolpanel = new JScrollPane();
private JButton botao_abrir = new JButton (imagem_abrir);
private JButton botao_txt = new JButton (imagem_txt);
private JButton botao_voltar = new JButton (imagem_voltar);
private JButton botao_avancar = new JButton (imagem_avancar);
private JButton botao_fechararquivo = new JButton("Fechar arquivo");
private JButton botao_informacoes = new JButton("Informações do arquivo");
private JMenu mnuArquivo = new JMenu("Arquivo");
private JMenu mnuProcurar = new JMenu("Procurar");
private JMenuItem mnuAbrir = new JMenuItem("Abrir Alt+1", imagem_abrir);
private JMenuItem mnuSair = new JMenuItem("Sair", imagem_sair);
private JMenuItem mnuTxt = new JMenuItem("TXT Alt+2", imagem_txt);
private JSeparator separator = new JSeparator();
private JFileChooser fc = new JFileChooser();
private JLabel lblStatus = new JLabel("Nenhum Arquivo Aberto");
public validador(){
this.setTitle("Validador de TXT");
this.setLayout(new BorderLayout());
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
this.setSize(1280, 768);
this.setLocation(0, 0);
this.setVisible(true);
this.setExtendedState(JFrame.MAXIMIZED_BOTH);//maximiza o tamanho da janela
botao_fechararquivo.setVisible(false);
botao_informacoes.setVisible(false);
this.adicionarComponentes();
URL url = this.getClass().getResource("/imagens/accept.png");
Image imagemTitulo = Toolkit.getDefaultToolkit().getImage(url);
this.setIconImage(imagemTitulo);
}
void adicionarComponentes(){
//Itens do Arquivo
mnuArquivo.add(mnuAbrir);
mnuArquivo.add(separator);
mnuArquivo.add(mnuSair);
//Itens do Procurar
mnuProcurar.add(mnuTxt);
//Itens da barra de Menu
mnuBarra.add(mnuArquivo);
mnuBarra.add(mnuProcurar);
//Itens da toolbar
botao_voltar.setToolTipText("Voltar");
botao_avancar.setToolTipText("Avançar");
botao_abrir.setToolTipText("Abrir arquivo .txt");
botao_txt.setToolTipText("Abrir Registros de um arquivo");
botao_fechararquivo.setToolTipText("Fechar arquivo");
botao_informacoes.setToolTipText("Ver informações do arquivo");
toolbar.setFloatable(false);
toolbar.add(botao_voltar);
toolbar.add(botao_avancar);
toolbar.add(botao_abrir);
toolbar.add(botao_txt);
//toolbar.add(botao_regtab);
toolbar.add(botao_fechararquivo);
toolbar.add(botao_informacoes);
//Itens do painel
pl.add("North",mnuBarra);
pl.add("South",toolbar);
//Itens do JFrame
this.add("North",pl);
this.add("Center",scrolpanel);
lblStatus.setBorder(BorderFactory.createEtchedBorder());
this.add("South",lblStatus);
mnuSair.addActionListener(this);
mnuAbrir.addActionListener(this);
mnuTxt.addActionListener(this);
botao_voltar.addActionListener(this);
botao_avancar.addActionListener(this);
botao_abrir.addActionListener(this);
botao_txt.addActionListener(this);
botao_fechararquivo.addActionListener(this);
botao_informacoes.addActionListener(this);
//Botoes que podem ser acionados pelo comando do teclado: ALT + Tecla
mnuArquivo.setMnemonic(KeyEvent.VK_A);//Alt+A
mnuProcurar.setMnemonic(KeyEvent.VK_P);//Alt+P
mnuSair.setMnemonic(KeyEvent.VK_Q);//Alt+Q
botao_voltar.setMnemonic(KeyEvent.VK_LEFT);//Alt + <-
botao_avancar.setMnemonic(KeyEvent.VK_RIGHT);//Alt + ->
botao_abrir.setMnemonic(KeyEvent.VK_1);//Alt+1
botao_txt.setMnemonic(KeyEvent.VK_2);//Alt+2
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == mnuAbrir || e.getSource() == botao_abrir) {
limpaInformacoes();
abrir();
}
if (e.getSource() == mnuTxt || e.getSource() == botao_txt) {
limpaInformacoes();
txt();
}
if (e.getSource() == botao_voltar) {
voltar();
}
if (e.getSource() == botao_avancar) {
avancar();
}
if(e.getSource() == botao_fechararquivo){
fecharArquivo();
}
if(e.getSource() == botao_informacoes){
informacoes();
}
if (e.getSource() == mnuSair) {
System.exit(0);
}
}
void abrir(){
}
void txt() {
}
void codigoTabela() {
}
void voltar() {
}
void avancar() {
}
void fecharArquivo(){
}
void limpaInformacoes(){
}
public void atualizarRegistro(String linha){
}
void informacoes(){
}
public void keyReleased(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
}
public void keyPressed(KeyEvent e){
if(e.getKeyCode() == KeyEvent.VK_LEFT){
voltar();
}
else
if(e.getKeyCode() == KeyEvent.VK_RIGHT){
avancar();
}
}
public static void main(String[] args){
Validadorr validador = new Validadorr();
}
}
Tenho este codigo aqui, limpei algumas coisas desnecessarias talvez por isso ele nao compile…
mas a minha grande duvida é como ativar as teclas do toolbar q tenho usando o botao Enter do teclado, eu consigo andar no toolbar com as setas do teclado so nao descobri uma maneira de ativar as funçoes ao clicar no botao enter, por enquanto uso os comandos abaixo para acionar as funçoes delas:
botao_voltar.setMnemonic(KeyEvent.VK_LEFT);//Alt + <-
botao_avancar.setMnemonic(KeyEvent.VK_RIGHT);//Alt + ->
botao_abrir.setMnemonic(KeyEvent.VK_1);//Alt+1
botao_txt.setMnemonic(KeyEvent.VK_2);//Alt+2
Alguem sabe como resolver isso:
Por favor estou precisando muito de ajuda com este problema