![]() |
|
||||
![]() 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 |
Você está aqui: Java ::: Classes e Componentes ::: JTable |
Entendendo a interface TableColumnModelQuantidade de visualizações: 8353 vezes |
A interface TableColumnModel foi idealizada para manter instâncias da classe TableColumn, onde cada instância representa uma única coluna de dados do TableModel. TableColumn é a classe responsável por gerenciar a exibição de uma coluna na GUI da JTable. Cada TableColumn tem um renderizador de célula, um editor de célula, um table header e um renderizador de célula para os títulos da tabela associados a ela. Quando uma JTable é colocada em um JScrollPane seus títulos são colocados na parte COLUMN_HEADER do painel de rolagem e podem ser arrastados e redimensionados afim de reordenar ou alterar o tamanho das colunas. O renderizador do título de uma TableColumn é responsável por retornar o componente usado para a exibição do título da coluna, e o renderizador de células é responsável por retornar o componente usado para exibir cada célula. Como acontece com os renderizadores de JList e JTree, estes renderizadores também agem como "carimbos" e não são interativos. Os componentes retornados pelos editores de células são completamente interativos. Renderizadores de células são instâncias de TableCellRenderer e editores de células são instâncias de CellEditor. Se nenhum destes são explicitamente definidos, versões padrões serão usadas baseadas no tipo da Class do tipo de dados correspondente ao TableModel. O trabalho da interface TableColumnModel é gerenciar todas as instâncias de TableColumns, fornecendo controle sobre a ordem, seleção de colunas e tamanho de margens. Para suportar diferentes modos de seleção, a TableColumnModel mantém uma ListSelectionModel que permite seleções únicas, de intervalo único e seleções de múltiplos intervalos. |
![]() |
Java ::: Coleções (Collections) ::: Set (Conjunto) |
||||||||
Java Collections - Como usar a interface Set em seus códigos JavaQuantidade de visualizações: 5033 vezes |
||||||||
A interface Set estende a interface Collection mas não adiciona novos métodos ou constantes. Em vez disso, esta interface define que uma instância de Set não contenha elementos duplicados. Esta responsabilidade é transferida para as classes que implementam a interface. A classe abstrata AbstractSet é uma classe de conveniência que herda da classe também abstrata AbstractCollection e implementa a interface Set. A classe AbstractSet fornece implementações concretas para os métodos equals() e hashCode(). Estes métodos permitem a funcionalidade da não permissão de elementos duplicados nos conjuntos. As classes concretas mais conhecidas da interface Set são: HashSet - Esta classe é implementada em cima de uma tabela hash, ou seja, um array (matriz) na qual os elementos são armazenados em posições calculadas de acordo com o seu conteúdo. Uma característica interessante de HashSet é que os elementos raramente são retornados na mesma ordem na qual foram inseridos. LinkedHashSet - Esta classe estende a classe HashSet com uma implementação de lista ligada (linked list) que permite a ordenação dos elementos no conjunto. TreeSet - Esta classe é uma classe concreta que implementa a interface SortedSet. A interface SortedSet é uma sub-interface de Set que garante que os elementos no conjunto estejam ordenados. Além disso, esta interface fornece os métodos first() e last() para acessar o primeiro e o último elemento do conjunto. Há ainda os métodos headSet(toElement) e tailSet(fromElement) para retornar uma faixa do conjunto cujos elementos sejam "menores" que toElement e "maiores" que fromElement. Seja qual for a implementação de Set que você queira usar, é sempre uma boa idéia codificar em cima da interface. Isso facilita a troca de HashSet por TreeSet ou vice-versa sem grandes modificações no seu código. Veja um exemplo no qual usamos a classe concreta HashSet para representar um conjunto de cinco strings únicas:
Ao executar este trecho de código teremos um resultado parecido com:
Note que raramente os elementos serão exibidos na ordem na qual eles foram inseridos. Experimente agora trocar a linha: Set<String> conjunto = new HashSet<>(); por Set<String> conjunto = new LinkedHashSet<>(); Execute o código novamente e verá que agora os elementos são exibidos na mesma ordem que foram inseridos. | ||||||||
Java ::: Pacote java.awt ::: Graphics |
||||
Como desenhar texto na superfície de uma JLabel do Java Swing usando o método drawString() da classe GraphicsQuantidade de visualizações: 11607 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:
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. | ||||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Geometria, Trigonometria e Figuras Geométricas |
||||
Exercícios Resolvidos de Java - Como calcular o volume e a área de um cilindro em Java - Geometria Espacial em JavaQuantidade de visualizações: 889 vezes |
||||
Pergunta/Tarefa: O Cilindro ou Cilindro Circular é um sólido geométrico alongado e arredondado que possui o mesmo diâmetro ao longo de todo o comprimento. Essa figura geométrica, que faz parte dos estudos de geometria espacial, apresenta dois círculos com raios de medidas equivalentes os quais estão situados em planos paralelos. Veja a imagem a seguir: ![]() Escreva um programa Java que pede para o usuário informar o raio e a altura de um cilindro e calcule e mostre o seu volume e sua área de superfície. Os valores informados pelo usuário deverão ser do tipo double e os resultados deverão também ser do tipo double. Para auxiliar nos cálculos, a fórmula do volume do cilindo é: \[ \text{V} = \pi \cdot r^2 \cdot \text{h} \] Já a fórmula da área do cilindro é: \[ \text{A} = \text{2} \cdot \pi \cdot r \cdot (r + h) \] Sua saída deve ser parecida com: Informe o raio do cilindro: 5 Informe a altura do cilindro: 8 O volume do cilindro é: 628.3185307179587 A área do cilindro é: 408.4070449666731 Veja a resolução comentada deste exercício usando Java:
| ||||
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 |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |