Você está aqui: Java ::: Classes e Componentes ::: JTextArea

Definir uma imagem de fundo (marca d`agua) para um JTextArea

Quantidade de visualizações: 14279 vezes
// Este exemplo mostra como inserir uma imagem de
// fundo em uma JTextArea

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

public class Estudos extends JFrame{
  JTextArea textArea;

  public Estudos() {
    super("Como definir uma imagem de fundo para um JTextArea");
    Container c = getContentPane();
    FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
    c.setLayout(layout);
   
    final ImageIcon imageIcon = new ImageIcon("imagens/fundo.jpg");
        
    textArea = new JTextArea(10, 20){
        Image image = imageIcon.getImage();

        Image grayImage = GrayFilter.createDisabledImage(image);
        {
            setOpaque(false);
        }

        public void paint(Graphics g) {
            g.drawImage(grayImage, 0, 0, this);
            super.paint(g);
        }
    };

    JScrollPane scrollPane = new JScrollPane(textArea);
       
    c.add(scrollPane);
    
    setSize(350, 250);
    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 ::: Desafios e Lista de Exercícios Resolvidos ::: Laços

Exercícios Resolvidos de Java - Escreva um programa Java que usa o laço for para desenhar um padrão de diamante de estrelas

Quantidade de visualizações: 1308 vezes
Exercício Resolvido de Java - Escreva um programa Java que usa o laço for para desenhar um padrão de diamante de estrelas

Pergunta/Tarefa:

Neste exercício para a prática da linguagem Java você deverá usar o laço for para desenhar o famoso padrão de diamante de estrelas. Você pode também usar o laço while, se assim você o desejar.

O programa deverá pedir que o usuário informe a quantidade de linhas que marcará a metade do diamante.

Seu programa deve apresentar a seguinte saída:

Informe a quantidade de linhas: 5
    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *
Resposta/Solução:

Veja a resolução comentada deste exercício em Java:

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

package exercicio;

import java.util.Scanner;

public class Exercicio {
  public static void main(String[] args) {
    // vamos usar um objeto Scanner para ler a entrada do usuário
    Scanner leitura = new Scanner(System.in);
    
    // vamos pedir a quantidade de linhas 
    System.out.print("Informe a quantidade de linhas: ");
    // vamos ler a entrada do usuário
    int linhas = Integer.parseInt(leitura.nextLine());
    
    int estrelas = 1; // começamos com uma estrela (no topo do diamante)
    int espacos = linhas - 1; // se linhas for igual a 5 nós começamos
    // com 4 espaços
    
    // repete duas vezes a quantidade de linhas informadas
    for(int i = 1; i < linhas * 2; i++){
      // vamos imprimir os espaços
      for(int j = 1; j <= espacos; j++){
        System.out.print(" ");
      }
        
      // agora vamos imprimir estrelas
      for(int j = 1; j < estrelas * 2; j++){
        System.out.print("*");
      }
		    
      // passamos para a próxima linha
      System.out.println();
        
      if(i < linhas){ // é a parte superior do diamante
        espacos--; // diminui os espaços
        estrelas++; // e aumenta as estrelas
      }
      else{ // é a parte inferior do diamente
        espacos++; // aumenta os espaços
        estrelas--; // e diminui as estrelas
      }
    }
  }
}



Java ::: Java Swing - JTable e classes relacionadas ::: JTable

Como aplicar cores alternadas às linhas de uma JTable do Java Swing

Quantidade de visualizações: 103 vezes
Nesta dica eu mostrarei como aplicar o tão falado "efeito zebrinha" nas linhas de uma tabela JTable do Java Swing. A técnica é muito simples é, uma vez aprendida, possibilita a criação de códigos cada vez mais interessantes.

Veja como efetuo uma chamada ao método prepareRenderer() para obter um Component representando a célula que está sendo renderizada. Se o índice da linha da célula for par e não estiver selecionada, nós efetuamos uma chamada à setBackground() da classe Component para definir a sua cor de fundo.

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;

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

public class Estudos extends JFrame {
  public Estudos() {
    super("Exemplo de uma tabela com efeito zebrinha");

    // colunas da tabela
    String[] colunas = {"Cidade", "Estado", "Habitantes"};

    // conteúdo da tabela   
    Object[][] conteudo = {
      {"Goiânia", "GO", "43.023.432"},
      {"São Paulo", "SP", "5.343.234"},
      {"Rio de Janeiro", "RJ", "6.434.212"},
      {"Jussara", "GO", "87.454"},
      {"Barra do Garças", "MT", "64.344"}
    };

    // constrói a tabela
    final JTable tabela = new JTable(conteudo, colunas) {
      @Override
      public Component prepareRenderer(TableCellRenderer renderer,
        int rowIndex, int vColIndex) {
        
        Component c = super.prepareRenderer(renderer, rowIndex, vColIndex);
        
        if (rowIndex % 2 == 0 && !isCellSelected(rowIndex, vColIndex)) {
          c.setBackground(Color.YELLOW);
        } 
        else {
          c.setBackground(getBackground());
        }
        return c;
      }
    };

    tabela.setPreferredScrollableViewportSize(new Dimension(350, 150));

    Container c = getContentPane();
    c.setLayout(new FlowLayout());

    JScrollPane scrollPane = new JScrollPane(tabela);
    c.add(scrollPane);

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

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

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




Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços

Exercícios Resolvidos de Java - Como converter de binário para decimal em Java usando o laço for

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

Escreva um programa Java que usa o laço for para converter um número binário (como uma String) em sua representação decimal (como um int). Peça ao usuário para informar um número binário e mostre o mesmo em decimal (como um int). Sua solução deve obrigatoriamente usar o laço for.

Sua saída deverá ser parecida com:

Informe um número binário: 1100
A representação decimal do valor binário 1100 é 12
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) {
    // vamos fazer a leitura usando a classe Scanner
    Scanner entrada = new Scanner(System.in);
       
    // vamos ler o número binário (como uma String)
    System.out.print("Informe um número binário: ");
    String bin = entrada.nextLine();
    int decimal = 0; // guarda a representação decimal
     
    // vamos percorrer todos os dígitos do número binário começando do início
    for(int i = 0, exp = bin.length() - 1; i < bin.length(); i++, exp--){
      // converte o caractere atual para inteiro
      int temp = Character.digit(bin.charAt(i), 10);  
      decimal = decimal + (temp * (int)Math.pow(2, exp));
    }
     
    System.out.println("A representação decimal do valor binário " 
      + bin + " é " + decimal);
  }
}



Mais Desafios de Programação e 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



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