Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Eventos com KeyStrokes - Como abrir uma janela com o teclado

Olá Pessoa bom dia,

estou tentando criar uma aplicação que realiza um operação! Tenho um menu e neste menu (Arquivo) que dentro do mesmo tenho a opção de item de menu (Cadastro). No menu cadastro terá um atalho que após realizar uma ação por exemplo pressionar a tecla CRTL+A abrir-se-á a janela de cadastro. alguém pode me ajudar?

import java.awt.GridBagLayout;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class Teste extends JFrame {

    JMenuBar barraMenu;

    public Teste() {
        setTitle("Sistema de Gerenciamento de Estoque");
        setLayout(new GridBagLayout());

        // inicializar objetos
        barraMenu = new JMenuBar();

        // adicionar a barra de menu a Janela Principal
        setJMenuBar(barraMenu);

        // cria os menus da barra de Menu
        JMenu mArquivo = new JMenu("Arquivo");

        // adiciona os menus a barra de menu
        barraMenu.add(mArquivo);

        // cria os itens de menu
        JMenuItem itemCadastro = new JMenuItem("Cadastro");

        // adiciona os itens do menu Arquivo
        mArquivo.add(itemCadastro);

        setSize(400, 400);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setExtendedState(JFrame.MAXIMIZED_BOTH);
        setVisible(true);
    }

    public static void main(String[] args) {

        new Teste();

    }

}
1 resposta
solução!
como ninguém respondeu eu consegui fazer com ajuda de um colega


import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.KeyStroke;

@SuppressWarnings("serial")
public class Teste extends JFrame {

    JMenuBar barraMenu;

    public Teste() {
        setTitle("Sistema de Gerenciamento de Estoque");
        setLayout(new GridBagLayout());

        // inicializar objetos
        barraMenu = new JMenuBar();

        // adicionar a barra de menu a Janela Principal
        setJMenuBar(barraMenu);

        // cria os menus da barra de Menu
        JMenu mArquivo = new JMenu("Arquivo");

        // adiciona os menus a barra de menu
        barraMenu.add(mArquivo);

        // cria os itens de menu
        JMenuItem itemCadastro = new JMenuItem("Cadastro");

        // adiciona os itens do menu Arquivo
        mArquivo.add(itemCadastro);

        // itemSair.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));

        // adiciona as teclas a serem precionadas
        itemCadastro.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,
                InputEvent.CTRL_MASK));

        itemCadastro.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {

                // aqui eu abro a janela
                new Janela_A_Ser_Aberta();

            }
        });

        setSize(400, 400);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setExtendedState(JFrame.MAXIMIZED_BOTH);
        setVisible(true);
    }

    public static void main(String[] args) {

        new Teste();

    }

}

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software