Você está aqui: Java ::: Classes e Componentes ::: JMenuBar, JMenu, JMenuItem e Afins

Adicionando submenus a itens de menu

Quantidade de visualizações: 14416 vezes
/*
  Este exemplo mostra como acrescentar
  submenus a itens de menu. A técnica
  consiste em adicionar um JMenu a outro
  JMenu.
*/

import javax.swing.*;

public class Estudos extends JFrame{
  public Estudos(){
    super("Menus");

    // Cria a barra de menus
    JMenuBar barra = new JMenuBar();
    setJMenuBar(barra);

    // Cria um menu
    JMenu opcoes = new JMenu("Opções");

    // Cria outro menu
    JMenu sub = new JMenu("Ferramentas");    

    // Adiciona o segundo JMenu ao primeiro
    opcoes.add(sub);

    // Cria um item de menu e o adiciona ao
    // segundo JMenu
    JMenuItem item = new JMenuItem("Item 1");
    
    sub.add(item);

    // Adiciona o menu à barra de menus
    barra.add(opcoes);

    setSize(300, 150);
    setVisible(true);    
  }

  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Java + MySQL ::: Metadados da Base de Dados (Database Metadata)

Java MySQL - Como obter os tipos de tabelas suportados pelo MySQL usando o método getTableTypes() da classe DatabaseMetaData

Quantidade de visualizações: 5314 vezes
Em algumas situações precisamos obter os tipos de tabelas suportados por uma determinada versão do MySQL. Isso pode ser feito com uma chamada ao método getTableTypes() da classe com.mysql.jdbc.DatabaseMetaData. Um objeto desta classe é obtido a partir do método getMetaData() da interface Connection (para o driver com.mysql.jdbc.Driver, é claro).

A assinatura do método getTableTypes() é:

public ResultSet getTableTypes() throws SQLException 
O retorno do método é um ResultSet contendo os tipos de tabelas, tais como "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS" e "SYNONYM".

Vamos ver um exemplo? Veja um trecho de código que usei para listar os tipos de tabelas disponíveis no MySQL 5.0:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudosbancodados;

import java.sql.*;

public class EstudosBancoDados{
  public static void main(String[] args) {
    // strings de conexão
    String databaseURL = "jdbc:mysql://localhost/estudos";
    String usuario = "root";
    String senha = "osmar1234";
    String driverName = "com.mysql.jdbc.Driver";

    try {
      Class.forName(driverName).newInstance();
      Connection conn = DriverManager.getConnection(databaseURL, usuario, senha);

      // vamos obter um objeto da classe com.mysql.jdbc.DatabaseMetaData
      DatabaseMetaData dbmd = conn.getMetaData();

      // vamos obter os tipos de tabelas suportadas por esta versão do MySQL
      ResultSet tiposTabelas = dbmd.getTableTypes();
      while(tiposTabelas.next()){
        System.out.println(tiposTabelas.getString("TABLE_TYPE"));
      }
      
      // vamos fechar o ResultSet
      tiposTabelas.close();
    }
    catch (SQLException ex) {
      System.out.println("SQLException: " + ex.getMessage());
      System.out.println("SQLState: " + ex.getSQLState());
      System.out.println("VendorError: " + ex.getErrorCode());
    }
    catch (Exception e) {
      System.out.println("Problemas ao tentar conectar com o banco de dados: " + e);
    }
  }
}

O resultado da execução deste código foi:

TABLE
VIEW
LOCAL TEMPORARY


Java ::: Coleções (Collections) ::: Stack

Como criar uma pilha em Java usando a classe Stack - Java Collections

Quantidade de visualizações: 13184 vezes
A classe Stack é usada quando precisamos de uma estrutura de dados LIFO (last-in-first-out). Neste tipo de estrutura temos uma pilha de objetos, na qual o último elemento inserido na pilha é sempre o primeiro a sair.

A classe Stack extende a classe Vector com a adição de cinco operações próprias da estrutura de dados pilha. As dicas nesta seção mostram a você como usar cada uma destas operações. Antes, veja a posição da classe Stack na hierarquia de classes Java:

java.lang.Object
  java.util.AbstractCollection<E>
    java.util.AbstractList<E>
      java.util.Vector<E>
        java.util.Stack<E> 


Esta classe implementa as interfaces: Serializable, Cloneable, Iterable<E>, Collection<E>, List<E> e RandomAccess. Veja um trecho de código que cria uma Stack de inteiros, insere três elementos e usa o método pop() para remover o elemento no topo da pilha:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    // Cria uma Stack
    Stack<Integer> pilha = new Stack<Integer>();
    
    // adiciona três elementos na pilha
    pilha.push(34);
    pilha.push(12);
    pilha.push(83);

    // remove o elemento no topo da pilha
    int topo = pilha.pop();

    System.out.println("Elemento removido do " +
     "topo da pilha: " + topo);
  } 
}

Ao executar este código Java nós teremos o seguinte resultado:

Elemento removido do topo da pilha: 83


Java ::: Fundamentos da Linguagem ::: Modificadores

Como usar o modificador native da linguagem Java

Quantidade de visualizações: 9465 vezes
O modificador native é usado exclusivamente com métodos. A implementação de um método marcado como native não é feita em Java mas sim em outra linguagem de programação, tal como C ou C++.

Veja um exemplo de uma aplicação Java contendo um método native:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

public class Estudos{
  private static native void escrever();
	
  public static void main(String[] args){
    System.loadLibrary("Funcoes");
    escrever();
  }
}

O primeiro detalhe a observar é a definição de um método native chamado escrever(). Veja que este método possui apenas a assinatura, o que quer dizer que sua implementação virá de um ponto externo ao nosso código. Em seguida temos uma chamada ao método LoadLibrary() da classe System. Este método recebe uma string contendo o nome da biblioteca que contém a implementação do método escrever(). O próprio método LoadLibrary se encarrega de acrescentar as extensões .dll ou .so ao nome da biblioteca que será carregada.

Quando estamos trabalhando com métodos native, é sempre uma boa idéia estudarmos JNI (Java Native Interface). JNI é uma API do Java que permite que métodos Java chamem funções nativas implementadas em C.


Vamos testar seus conhecimentos em Ética e Legislação Profissional

Ano: 2023 Banca: Instituto Access - Instituto de Acesso à Educação, Capacitação Profissional e Desenvolvimento Humano Prova: Instituto Access - Instituto de Acesso à Educação, Capacitação Profissional e Desenvolvimento Humano - Prefeitura de Dores do Indaiá - Advogado do Procon - 2023

A respeito de ética no âmbito público, analise as afirmativas a seguir:

I. A ética no serviço público é pressuposto do servidor público.

II. Os trabalhadores com vínculo com entidades governamentais precisam seguir uma série de valores e regras estabelecidos para esse serviço.

III. Como se relaciona à moral, a ética pode sofrer ajustes pessoais de acordo com os valores morais e princípios individuais de cada cidadão.

Assinale:

A) se apenas as afirmativas I e II estiverem corretas.

B) se apenas as afirmativas I e III estiverem corretas.

C) se apenas as afirmativas II e III estiverem corretas.

D) se todas as afirmativas estiverem corretas.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Python

Qual o resultado da execução do seguinte código Python?

# função usada para trocar dois itens de posição em uma lista
def trocar_posicao(lista, pos1, pos2):
  lista[pos1], lista[pos2] = lista[pos2], lista[pos1]
  return lista
 
# cria uma lista
valores = [1, 2, 3, 4]
# define as posições de troca
pos1, pos2 = 0, 3
 
# chama a função de troca e retorna a nova lista 
print(trocar_posicao(valores, pos1, pos2))

A) [1, 4, 3, 2]

B) [3, 2, 4, 1]

C) [4, 2, 3, 1]

D) [4, 4, 3, 2]

E) [4, 3, 2, 1]
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em

Cisalhamento e detalhamento de vigas

A NBR 6118 (ABNT, 2014) determina que todos os elementos lineares submetidos à força cortante devem conter armadura transversal mínima (&#961;SW) constituída por estribos.

Nesse contexo, marque a alternativa correta:

A) O diâmetro da barra que constitui o estribo não pode exceder 20% da menor largura da viga.

B) O diâmetro da barra que constitui o estribo deve ser exatamente de 5mm ou menor.

C) Nos estribos em que as barras são lisas, o diâmetro não pode ser superior a 10mm.

D) O espaçamento máximo entre as barras transversais dos estribos não deve ser superior a 20cm.

E) O espaçamento mínimo adequado dos estribos deve ser aquele que permita a introdução do vibrador.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em JavaScript

Analise o seguinte trecho de código JavaScript

var a = new Array();
a[0] = 12;
a[1] = false;
a[2] = "texto";
a[3] = a;

Qual destas instruções provocará um erro de execução?

A) Linha 3

B) Linha 4

C) Linha 5

D) O código executa sem provocar erros
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

O exercício do direito à propriedade

Os direitos de vizinhança, quando violados, abrem para o lesado a possibilidade de ingressar com a medidas judiciais assecuratórias do seu direito, como solicitar a suspensão da obra que está sendo realizada pelo vizinho, sua reformulação ou demolição. Sobre esse tema, assinale a alternativa correta e as possíveis alterações legislativas nesse procedimento:

A) A ação de nunciação de obra nova é procedimento especial do Código de Processo Civil de 2015.

B) A ação de nunciação de obra nova não deve sofrer, atualmente, mudança de terminologia e tramita pelo procedimento especial.

C) O objetivo principal é reformular ou demolir a obra; a suspensão é mero pedido liminar no início da ação.

D) A ação de nunciação de obra nova também pode ser ajuizada para a obra que já tiver sido finalizada.

E) O prazo para ingressar com a nunciação é de até um ano e um dia a contar da conclusão da obra.
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

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware 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 funcionalidadesControle 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
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 17 usuários muito felizes estudando em nosso site.