Você está aqui: Java ::: Aplicativos Completos ::: Fontes |
Como criar um visualizador de fontes em Java Swing - Código fonte completoQuantidade de visualizações: 10285 vezes |
Código completo Java: Como escrever um visualizador de fontes em Java Swing Nesta dica eu mostro o código completo para uma aplicação GUI usado Java Swing e que permite visualizar as fontes instaladas no sistema. Ao clicar em uma das fontes exibidas em uma JList, o texto da JLabel é formatado de acordo com a fonte escolhida. Note que montei toda a GUI em código mesmo, ou seja, sem usar o editor visual do Netbeans ou outra IDE. Esse é um bom exercício para entender os elementos que compõem interfaces gráficas do Java Swing. Eis o código 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 javax.swing.*; import javax.swing.event.*; import java.util.*; public class Estudos extends JFrame implements ListSelectionListener{ JLabel label = new JLabel("Observe este texto"); public Estudos(){ super("Visualizados de Fontes"); String[] fontNames; // nomes das fontes Toolkit toolkit = Toolkit.getDefaultToolkit(); fontNames = GraphicsEnvironment.getLocalGraphicsEnvironment(). getAvailableFontFamilyNames(); Vector fonts = new Vector(); for(int i = 0; i < fontNames.length; i++){ fonts.add(new Font(fontNames[i], Font.PLAIN, 16)); } JList fontList = new JList(fonts); fontList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); fontList.setCellRenderer(new FontCellRenderer()); JScrollPane scrollPane = new JScrollPane(fontList); JPanel p = new JPanel(); p.add(scrollPane); fontList.addListSelectionListener(this); getContentPane().add(p, "Center"); getContentPane().add(label, "South"); setSize(500, 250); setVisible(true); } @Override public void valueChanged(ListSelectionEvent evt){ JList source = (JList) evt.getSource(); Font font = (Font) source.getSelectedValue(); label.setFont(font); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } // Classe personalizada que implementa ListCellRenderer class FontCellRenderer implements ListCellRenderer{ @Override public Component getListCellRendererComponent( final JList list, final Object value, final int index, final boolean isSelected, final boolean cellHasFocus){ return new JPanel(){ @Override public void paintComponent(Graphics g){ super.paintComponent(g); Font font = (Font) value; String text = font.getFamily(); FontMetrics fm = g.getFontMetrics(font); g.setColor(isSelected ? list.getSelectionBackground() : list.getBackground()); g.fillRect(0, 0, getWidth(), getHeight()); g.setColor(isSelected ? list.getSelectionForeground() : list.getForeground()); g.setFont(font); g.drawString(text, 0, fm.getAscent()); } @Override public Dimension getPreferredSize() { Font font = (Font) value; String text = font.getFamily(); Graphics g = getGraphics(); FontMetrics fm = g.getFontMetrics(font); return new Dimension(fm.stringWidth(text), fm.getHeight()); } }; } } Ao executá-lo você terá um resultado parecido com: |
Link para compartilhar na Internet ou com seus amigos: |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
Exercícios Resolvidos de Java - Como testar se um número é perfeito usando JavaQuantidade de visualizações: 702 vezes |
Pergunta/Tarefa: Escreva um programa Java que pede para o usuário informar um número inteiro e informa se este número é um número perfeito. Um número perfeito é aquele cuja soma dos seus divisores, exceto ele próprio, é igual ao número. Por exemplo, o número 6 é perfeito, pois 1 + 2 + 3 = 6. Sua saída deverá ser parecida com: Informe um número inteiro: 6 O número informado é um número perfeito. Veja a resolução completa para o exercício em Java, comentada linha a linha: ---------------------------------------------------------------------- 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){ int numero; // número informado pelo usuário int soma = 0; // vai guardar a soma dos dígitos // para efetuar a leitura da entrada do usuário Scanner entrada = new Scanner(System.in); // vamos pedir para o usuário informar o valor inteiro System.out.print("Informe um número inteiro: "); // lê o número informado numero = Integer.parseInt(entrada.nextLine()); // um laço que começa em 1 e até o número informado - 1 for(int i = 1; i < numero; i++){ // o número é divisível pelo valor de i? if(numero % i == 0){ soma = soma + i; // aumenta a soma } } // a soma é igual ao número informado? if(soma == numero){ System.out.println("O número informado é um número perfeito."); } else{ System.out.println("O número informado não é um número perfeito."); } } } |
Java ::: Dicas & Truques ::: Operadores de Manipulação de Bits (Bitwise Operators) |
Como usar o operador de bits & (E/AND sobre bits) em Java - Java Avançado - Manipulação de bits em JavaQuantidade de visualizações: 6647 vezes |
Esta dica de Java é muito útil para quem está se preparando para entrevistas de código ou desafios de programação. A manipulação de bits é fator importante para testar as habilidades de candidatos a vagas de programador, pois ela demonstra um conhecimento muito aprofundado de lógica de programação e também de rotinas de baixo nível. O operador de bits & (E/AND sobre bits) da linguagem Java é usado quando queremos comparar os bits individuais de dois valores integrais (inteiros) e produzir um terceiro resultado. Os bits no resultado serão configurados como 1 se os bits correspondentes nos dois outros valores foram 1. Em caso contrário os bits são configurados como 0. Vamos analisar os seguintes valores binários: a) 0101 (5 decimal) b) 0100 (4 decimal) Quando aplicamos o operador & nestes dois valores teremos o seguinte resultado: 0101 0100 ---- 0100 Veja que o resultado é 0100, uma vez que apenas o segundo bit de cada valor está configurado como 1. Vamos ver isso em Java agora. Observe o seguinte trecho de código: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class Main { public static void main(String[] args) { int a = 5; int b = 4; int c = a & b; // exibe o resultado (em inteiro e em bytes) System.out.println("a = " + obterBits(a) + " (" + a + ")"); System.out.println("b = " + obterBits(b) + " (" + b + ")"); System.out.println("a & b = " + obterBits(c) + " (" + c + ")"); } // método auxiliar que converte um inteiro em sua representação em bits public static String obterBits(int valor){ int mascara = 1 << 31; StringBuffer buffer = new StringBuffer(35); for(int i = 1; i <= 32; i++){ if((valor & mascara) == 0){ buffer.append('0'); } else{ buffer.append('1'); } valor <<= 1; if(i % 8 == 0){ buffer.append(' '); } } return buffer.toString(); } } Ao executar este código teremos o seguinte resultado: a = 00000000 00000000 00000000 00000101 (5) b = 00000000 00000000 00000000 00000100 (4) a & b = 00000000 00000000 00000000 00000100 (4) |
Java ::: Coleções (Collections) ::: HashMap |
Como testar se uma determinada chave está contida no HashMap do Java usando o método containsKey()Quantidade de visualizações: 8354 vezes |
Em algumas situações precisamos verificar se uma determinada chave está contida no HashMap. Para isso podemos usar o método containsKey(), definido originalmente na interface Map. Veja sua assinatura:public boolean containsKey(Object key) Note que este método recebe um objeto contendo o valor da chave a ser pesquisada e retorna um valor true se o HashMap contiver a chave e false caso contrário. Veja o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.*; public class Estudos{ public static void main(String[] args){ // vamos criar uma instância de HashMap HashMap<Integer, String> clientes = new HashMap<>(); // vamos adicionar três chaves e seus valores clientes.put(1, "Osmar J. Silva"); clientes.put(2, "Salvador Miranda de Andrade"); clientes.put(3, "Marcos da Costa Santos"); // vamos verificar se a chave 2 está contida no HashMap if(clientes.containsKey(2)){ System.out.println("A chave está contida no mapa"); } else{ System.out.println("A chave NÃO está contida no mapa"); } System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: A chave está contida no mapa |
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 |