Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: Java ::: Classes e Componentes ::: JTable

Java Swing - Como detectar qual linha ou coluna está selecionada em uma tabela JTable

Quantidade de visualizações: 16249 vezes
Nesta dica mostrarei como podemos usar o método valueChanged() da interface ListSelectionListener para detectar qual linha ou coluna está selecionada em um objeto JTable. Essa técnica interessante, pois permite facilmente a construção de tabelas mestre-detalhe, na qual selecionamos um cliente em uma JTable e outra JTable é atualizada mostrando somente os pedidos para o cliente selecionado.

Eis o resultado na imagem abaixo:



Veja o código completo para o exemplo:

package arquivodecodigos;

import javax.swing.*;
import java.awt.*;
import javax.swing.event.*;
 
public class Estudos extends JFrame{
  private boolean ALLOW_COLUMN_SELECTION = false;
  private boolean ALLOW_ROW_SELECTION = true;
   
  public Estudos(){
    super("Exemplo de uma tabela simples");
         
    // 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);
    tabela.setPreferredScrollableViewportSize(new Dimension(350, 50));
     
    // permite selecionar apenas uma linha de cada vez
    tabela.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
     
    // detecta seleções de linha
    if(ALLOW_ROW_SELECTION){ // verdadeiro por padrão
      ListSelectionModel rowSM = tabela.getSelectionModel();
      rowSM.addListSelectionListener(new ListSelectionListener(){
         public void valueChanged(ListSelectionEvent e){
            if(e.getValueIsAdjusting()) 
               return;
 
            ListSelectionModel lsm = (ListSelectionModel)e.getSource();
            if(lsm.isSelectionEmpty()){
               System.out.println("Nenhuma linha selecionada.");
......


Link para compartilhar na Internet ou com seus amigos:

C# ::: Dicas & Truques ::: Data e Hora

Como calcular a quantidade de dias decorridos em C# usando um objeto TimeSpan

Quantidade de visualizações: 8189 vezes
Em algumas ocasiões precisamos saber a quantidade de dias decorridos deste uma determinada data usando a linguagem C#. O trecho de código abaixo mostra como isso pode ser feito. Veja que usamos o construtor da estrutura DateTime para construir a data no passado e então a subtraímos da data atual. Em seguida obtemos a quantidade de dias do TimeSpan resultante:

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      // vamos obter a quantidade de dias decorridos entre
      // 10/06/2009 e a data atual
      DateTime data_anterior = new DateTime(2009, 6, 10);  // 10/06/2009
      DateTime hoje = DateTime.Now;

      // obtém a quantidade de dias decorridos
......


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

Dias decorridos desde 10/06/2009: 4662


jQuery ::: Dicas & Truques ::: Manipulação e Conteúdo Dinâmico

Como definir o conteúdo de um elemento HTML usando o método text() do jQuery

Quantidade de visualizações: 6926 vezes
O método text("conteudo") nos permite definir o conteúdo de um elemento HTML de forma muito simplificada. Veja um trecho de código que define o conteúdo de uma DIV com o id "div_1":

<script type="text/javascript">
<!--
  function definirTexto(){
    var texto = "Veja este texto";
......


Lembre-se de que este método atuará em todos os elementos retornados sob uma determinada condição. Observe ainda que este método substitui "<" e ">" por "&lt;" e "&gt;".

O retorno deste método é um objeto jQuery, que pode ser usado para possíveis encadeamentos de chamadas de métodos.


JavaScript ::: Dicas & Truques ::: Data e Hora

Como retornar o dia do mês em JavaScript usando a função getDate() do objeto Date

Quantidade de visualizações: 370 vezes
A função getDate() do objeto Date da linguagem JavaScript nos permite obter o dia do mês como um valor inteiro na faixa de 1 à 31. Veja abaixo um exemplo de seu uso:

<!doctype html>
<html>
<head>
  <title>O objeto Date do JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // vamos obter a data atual
  var data = new Date();
......


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

O dia do mes é: 5


Python ::: Fundamentos da Linguagem ::: Variáveis e Constantes

Como acessar variáveis globais a partir de seus métodos Python

Quantidade de visualizações: 12568 vezes
Por padrão, nossos próprios métodos e funções em Python não enxergam as variáveis definidas fora do seu escopo, e quando o fazem, é somente para leitura, já que alterações nas variáveis fora do escopo fazem com que o interpretar crie versões locais dessas variáveis.

Uma solução é usar a palavra-chave "global" antes do nome da varíável que queremos acessar. Veja como isso pode ser feito no trecho de código abaixo:

# uma variável global
nome = "Carlos"

# um método que acessa a variável global
def metodo():
  global nome
  nome = "Osmar J. Silva"

# função principal do programa
......


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

Valor alterado para: Osmar J. Silva


PHP ::: Dicas & Truques ::: Upload de Arquivos

Como fazer upload de arquivos em PHP - Escreva do zero seu código de upload de arquivos e imagens em PHP

Quantidade de visualizações: 10500 vezes
Nesta dica mostrarei como escrever seu primeiro código para upload de arquivos em PHP. Trata-se de um código realmente básico e, depois de aprendê-lo, recomendo que leia as demais dicas desta seção e implemente outras funcionalidades, tais como restringir os tipos e tamanhos dos arquivos a serem enviados ao servidor.

O primeiro passo é definir em qual diretório de sua hospedagem os arquivos enviados serão salvos. Feito isso, verifique se você possui permissão de escrita neste diretório. Se estiver usando Linux, um CHMOD 666 ou 777 deve resolver.

Vamos começar então. Crie uma página contendo o seguinte formulário:

<html>
<head>
<title>Upload de arquivos usando PHP</title>
</head>
<body>

<form action="testes.php" method="post" 
  enctype="multipart/form-data">
......


Veja que este formulário aponta para um arquivo testes.php e contém um campo <input type="file"> chamado "arquivo". Tenha este nome em mente para o perfeito entendimento do código. Veja agora o conteúdo do arquivo testes.php:

<?php
  // diretório no qual o arquivo será gravado. este diretório
  // deverá ter permissão de escrita
  $diretorio = "/home/xxx/xxx/xxx/imagens/";
  
  // vamos verificar o código do erro
  if($_FILES['arquivo']['error'] == UPLOAD_ERR_OK){
    // o arquivo foi transferido com sucesso. vamos usar a
    // função move_uploaded_file() para copiá-lo para 
......


Salve os dois arquivos na sua área de hospedagem, acesse a primeira página e envie um arquivo. Se você seguiu as instruções corretamente, o upload será feito com sucesso.

A parte mais importante deste código é o uso da função move_uploaded_file(). Esta função recebe o o local e nome temporário do arquivo e o diretório e nome para o qual o arquivo será enviado em definitivo. Note que usamos o nome original do arquivo na máquina do usuário para salvá-lo com o mesmo nome. É neste procedimento que aproveitamos para remover espaços e caracteres especiais do nome do arquivo. Se você faz parte do mundo Linux entenderá perfeitamente o que estou dizendo.


Desafios, Exercícios e Algoritmos Resolvidos de PHP

Veja mais Dicas e truques de PHP

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

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á 8 usuários muito felizes estudando em nosso site.