Você está aqui: Java ::: Dicas & Truques ::: Mouse e Teclado |
|
Entenda a interface KeyListenerQuantidade de visualizações: 12013 vezes |
|
Esta interface é usada para receber eventos do teclado (pressionamento de teclas). Classes interessadas em processar eventos do teclado devem implementar esta interface (e todos os seus métodos) ou extender a classe abstrata KeyAdapter (sobrescrevendo apenas os métodos de interesse). O objeto listener criado a partir desta classe é registrado no componente usando seu método addKeyListener. Veja um exemplo: Teclado teclado = new Teclado(); this.addKeyListener(teclado); Um evento do teclado é gerado quando uma tecla é pressionada, liberada ou digitada. O método relevante no objeto ouvido é então invocado e uma instância da classe KeyEvent é fornecida a ele. |
|
Link para compartilhar na Internet ou com seus amigos: | |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Exercício Resolvido de Java - Escreva um método chamado inverter() que recebe um número inteiro e retorna este mesmo número invertidoQuantidade de visualizações: 7066 vezes |
Pergunta/Tarefa: Escreva um método Java chamado inverter() que recebe um número inteiro e retorna este mesmo número invertido. Este método deverá ter a seguinte assinatura: public static int inverter(int numero){ // sua implementação aqui } ATENÇÃO: Para a resolução deste exercício é permitido usar apenas os operadores aritméticos. Sua saída deverá ser parecida com: Informe um número inteiro: 487 O valor invertido é: 784 Veja a resolução comentada deste exercício usando Java: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos{ public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos pedir ao usuário que informe um número inteiro System.out.print("Informe um número inteiro: "); int numero = Integer.parseInt(entrada.nextLine()); // fazer efetuar uma chamada ao método inverter() e obter o valor invertido int invertido = inverter(numero); // e exibir o resultado System.out.println("O valor invertido é: " + invertido); } // método estático que recebe um número inteiro e o devolve invertido public static int inverter(int numero){ int resultado = 0; // guarda o resultado da inversão // enquanto número for diferente de 0 while(numero != 0){ // obtém resto da divisão de número por 10 int resto = numero % 10; // resultado recebe ele mesmo multiplicado por 10 mais o resto resultado = resultado * 10 + resto; // finalmente número recebe ele mesmo dividido por 10 numero = numero / 10; } return resultado; // retorna o resultado } } |
Java ::: Dicas & Truques ::: Mouse e Teclado |
Java Swing para iniciantes - Como detectar eventos do teclado em uma janela JFrame do Java SwingQuantidade de visualizações: 13198 vezes |
Eventos do teclado podem ser detectados em uma janela JFrame do Java Swing por meio da interface KeyListener. Neste exemplo temos uma JFrame que estende essa interface e fornece implementação para o seu método keyPressed(). Temos também um controle JTextArea desabilitado, o qual usamos para exibir a letra e o código da tecla pressionada. Veja o resultado na imagem abaixo: E aqui está o código Java Swing completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Estudos extends JFrame implements KeyListener{ private JTextArea textArea; public Estudos(){ super("Eventos do Mouse e Teclado"); Container c = getContentPane(); FlowLayout layout = new FlowLayout(FlowLayout.LEFT); c.setLayout(layout); textArea = new JTextArea(100, 150); textArea.setEnabled(false); textArea.setDisabledTextColor(Color.BLACK); c.add(textArea); addKeyListener(this); setSize(350, 250); setVisible(true); } public void keyPressed(KeyEvent e){ textArea.setText( String.format("Tecla: %s - Código Unicode: %d", e.getKeyText(e.getKeyCode()), e.getKeyCode())); } public void keyReleased(KeyEvent e){ // sem implementação } public void keyTyped(KeyEvent e){ // sem implementação } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
Java ::: Classes e Componentes ::: JList |
Java Swing para iniciantes - Como adicionar itens a uma JList em tempo de execuçãoQuantidade de visualizações: 22397 vezes |
Este exemplo mostra como inserir itens em uma JList do Java Swing em tempo de execução. O valor a ser inserido é informado em um JTextField. Veja que estamos usando a classe DefaultListModel e seu método addElement() para adicionar os novos itens. Veja a janela JFrame e os componentes usados para exemplificar esta funcionalidade: E agora veja o código Java Swing completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Estudos extends JFrame{ JList lista; JTextField campo; public Estudos() { super("A classe JList"); Container c = getContentPane(); c.setLayout(new FlowLayout(FlowLayout.LEFT)); // Cria um novo DefaultListModel DefaultListModel modelo = new DefaultListModel(); // Cria a JList lista = new JList(); // Atribui o DefaultListModel à JList lista.setModel(modelo); // Um botão que permite adicionar itens na JList JButton btn = new JButton("Adicionar na JList"); btn.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ String valor = campo.getText(); if(valor.length() != 0){ ((DefaultListModel)(lista.getModel())) .addElement(valor); campo.setText(""); campo.requestFocus(); } } } ); // Adiciona a lista à janela c.add(new JScrollPane(lista)); // Cria um JTextField e o adiciona à janela campo = new JTextField(10); c.add(campo); // Adiciona o botão à janela c.add(btn); setSize(350, 250); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Princípios específicos do Direito do Consumidor (Juiz do Trabalho - RJ - 2015). Sob a visão clássica, cinco são os princípios que regem o direito contratual. A relação de consumo é ajustada por contrato e aqueles princípios também a ela se aplicam. Contudo, em face da natureza da relação de consumo, alguns desses princípios têm seu valor reduzido, enquanto outros assumem relevância. Tem relevância para a relação de consumo, o seguinte princípio do direito contratual: A) Da ordem pública. B) Da relatividade dos contratos. C) Da boa-fé. D) De obediência às regras mercantis. E) Da autonomia da vontade. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Formas: Confecção e colocação O concreto deve estar curado e liberado para a remoção das formas segundo recomendações técnicas. Quando não se utiliza concreto especial ou aditivo acelerador de pega, para vigas de pequeno vão, qual é o prazo mínimo para a retirada das formas inferiores, com a manutenção das principais escoras? A) Cinco dias. B) Sete dias. C) Dez dias. D) Quatorze dias. E) Vinte e um dias. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
O projeto de instalação hidrossanitária É fundamental que o projeto hidrossanitário esteja de acordo com as legislações vigentes a fim de promover, principalmente, a segurança. De modo geral, um bom projeto hidrossanitário deve ser dimensionado objetivando atender a: A) demandas da edificação em um período de, no máximo, 10 anos. B) demandas da edificação em um período de até 10-20 anos. C) demandas da edificação em um período de até 20-30 anos. D) demandas da edificação em um período de até 40-50 anos. E) demandas da edificação em um período de mais de 50 anos. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Equação da continuidade Um avião está se movendo pelo ar com velocidade de 220 m/s. As linhas de fluxo acima da asa estão comprimidas em 88% de sua área original. As linhas de fluxo abaixo da asa não estão comprimidas. Qual é a velocidade do ar acima da asa do avião em relação a esta? A) 220 m/s B) 26,4 m/s C) 414 m/s D) 194 m/s E) 250 m/s Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Fórmula de Chézy Um canal reto e retangular tem 2,1m de largura e 1,2m de profundidade e está com uma declividade de fundo de 3°. Sendo o fator de atrito igual a 0,022, a vazão para escoamento uniforme será: A) 23,97m3/s. B) 25,78m3/s. C) 30,87m3/s. D) 37,00m3/s. E) 37,55m3/s. Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |