Você está aqui: Java ::: Pacote java.awt ::: Graphics

Como desenhar texto na superfície de uma JLabel do Java Swing usando o método drawString() da classe Graphics

Quantidade de visualizações: 11590 vezes
A classe Graphics possui um método chamado drawString() que é usado para desenhar uma string na superfície de um componente. Veja a assinatura deste método:

public abstract void drawString(String str,
  int x,int y)


Como podemos ver, só precisamos fornecer a string a ser desenhada, a coordenada x e a coordenada y. Estas coordenadas são obtidas a partir do canto superior esquerdo do componente no qual desenharemos.

O trecho de código abaixo mostra como desenhar a string "Arquivo de Códigos" em um JLabel:

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

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Estudos extends JFrame{
  JLabel label;  

  public Estudos() {
    super("Desenhando em um JLabel");
    
    Container c = getContentPane();
    c.setLayout(new BorderLayout());

    // Cria um JLabel
    label = new JLabel();
    c.add(label, BorderLayout.CENTER);

    // Cria um botão
    JButton btn = new 
      JButton("Desenhar uma string");
    btn.addActionListener(
      new ActionListener(){
        public void actionPerformed(ActionEvent e){
          
          // Desenha uma string no JLabel
          Graphics graphics = label.getGraphics();
          graphics.drawString("Arquivo de Códigos", 
            20, 50);     

        }
      }
    );
    
    // Adiciona o botão à janela
    c.add(btn, BorderLayout.SOUTH);

    setSize(350, 250);
    setVisible(true);
  }
  
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}

Há algo de interessante neste código. Se você maximizar, minimizar ou redimensionar a janela verá que o desenho é apagado. Isso acontece porque todas as vezes que a janela sofre alguma alteração, ela é pintada novamente, juntamente com seus componentes filhos. Se você deseja que o desenho seja feito automaticamente novamente, é melhor fazer uma sub-classe do componente desejado e sobrescrever seu método paintComponent(). Nesta mesma seção você encontrará exemplos de como fazer isso.

Link para compartilhar na Internet ou com seus amigos:

Java ::: Fundamentos da Linguagem ::: Tipos de Dados

Como usar o tipo de dados char da linguagem Java

Quantidade de visualizações: 25281 vezes
O tipo de dados char é usado para representar um único caractere. Veja:

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

public class Estudos{
  public static void main(String args[]){
    char letra1 = 'A';
    char letra2 = 'B';     

    System.out.println("As letras são: "
      + letra1 + " e " + letra2);
    System.exit(0);
  }
}

Observe que um literal string deve estar entre aspas duplas, enquanto que um literal do tipo caractere deve estar entre aspas simples. Desta forma, "H" é uma string e 'H' é um caractere.

O tipo char é integral mas sem sinal. A faixa de uma variável deste tipo vai de 0 à 65536. Os caracteres em Java são codificados em Unicode, que é um codificação de 16 bits capaz de representar uma larga faixa de caracteres internacionais. Se os 9 bits mais significantes de um char forem todos 0, então a codificação será a mesma que o ASCII de 7 bits.

É possível atribuir literais inteiros à uma variável do tipo char. Veja:

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

public class Estudos{
  public static void main(String args[]){
    char letra = 98;  

    System.out.println("A letra é: "
      + letra);
    System.exit(0);
  }
}

Este código exibirá o caractere 'b'. Veja um exemplo no qual imprimimos todas as letras do alfabeto minúsculo:

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

public class Estudos{
  public static void main(String args[]){
    for(char i = 97; i <= 122; i++){    
      System.out.print(i + " ");
    } 
    
    System.exit(0);
  }
}

O tipo char pode ser convertido (sem a necessidade de cast) para os seguintes tipos:

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

char -> int -> long -> float -> double

Não é possível converter um char em um short ou byte. Caso isso seja realmente necessário, temos que fazer uma coerção (cast). Veja:

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

public class Estudos{
  public static void main(String args[]){
    char letra = 57;
    byte valor = (byte)(letra); 
    
    System.exit(0);
  }
}

É fácil entender porque um char não pode ser convertido implicitamente em um byte. Um char possui 16 bits enquanto um byte possui apenas 8 bits. Mas, um short possui 16 bits. Assim, o que impede a conversão implicita de um char para um short? É simples. Como o tipo short possui sinal (aceita valores negativos) e o tipo char é sem sinal, o resultado é que o tipo short possui um bit a menos (reservado para o sinal) e portanto, não pode acomodar os 16 bits do tipo char.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico

Exercícios Resolvidos de Java - Ler dois números inteiros e informar se os dois possuem o mesmo dígito no final em Java

Quantidade de visualizações: 578 vezes
Pergunta/Tarefa:

Escreva um programa Java que pede para o usuário informar dois números inteiros e informe se os dois números informados possuem o último dígito igual, ou seja, terminam com o mesmo dígito.

Sua saída deve ser parecida com:

Informe o primeiro número: 28
Informe o segundo número: 4318
Os dois números possuem o último dígito igual.

Informe o primeiro número: 39
Informe o segundo número: 93
Os dois números não possuem o último dígito igual.
Resposta/Solução:

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) {
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos pedir para o usuário informar dois inteiros
    System.out.print("Informe o primeiro número: ");
    int n1 = Integer.parseInt(entrada.nextLine());
    System.out.print("Informe o segundo número: ");
    int n2 = Integer.parseInt(entrada.nextLine());
    
    // agora vamos testar se os dois números terminam com
    // o mesmo último dígito
    if(Math.abs(n1 % 10) == Math.abs(n2 % 10)){
      System.out.println("Os dois números possuem o último dígito igual.");
    }
    else{
      System.out.println("Os dois números não possuem o último dígito igual.");
    }
  }
}



Java ::: Dicas & Truques ::: Matemática e Estatística

Como converter de binário para decimal usando o método parseInt() da classe Integer da linguagem Java

Quantidade de visualizações: 15714 vezes
Nesta dica eu mostro como podemos usar o método parseInt() da classe Integer do Java para converter um valor binário em um valor decimal. Para isso só precisamos forcecer o valor 2 como segundo argumento para o método parseInt().

Veja 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;

public class Estudos{
  public static void main(String args[]){
    String binario = "00000110";
     
    // efetua a conversão de binário para
    // decimal
    int decimal = Integer.parseInt(binario, 2);
 
    // exibe o resultado
    System.out.println("O valor binário " + binario + 
      " convertido para decimal é: " + decimal);
 
    System.exit(0);
  }
}

Ao executar este exemplo nós teremos o seguinte resultado:

O valor binário 00000110 convertido para decimal é: 6


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: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



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