Programação Orientada a Objetos II Aula - 03 Prof. Pedro Luís Antonelli Anhanguera Educacional Componentes gráficos básicos - JFrame O JFrame é a classe do Swing que representa uma janela. O JFrame serve como uma moldura de suporte para outros elementos gráficos. Exemplo de uso do JFrame Componentes gráficos básicos - JButton O JButton é a classe do Swing que representa um botão. O JButton serve como entrada de ações para nossos aplicativos. Exemplo de uso do JButton Colocando vários Botões no JFrame Gerenciadores de “Layout” Gerenciamento de layout Gerenciamento de layout ( Layout Management ) é o processo de determinar o tamanho e a posição dos componentes na janela gráfica do programa. É ele o responsável por determinar onde o componente irá ficar, como irá ficar, qual o comportamento a ser tomado na hora de redimensionar a tela. Por padrão o Java vem com vários gerenciadores de layout: - BorderLayout; - BoxLayout; - FlowLayout; - GridLayout. Gerenciadores de Lay-Out BorderLayout: divide um componente de plano de fundo em cinco regiões. É permitido adicionar um componente por região. Os componentes geralmente não conseguem ter seu tamanho preferido (moldura). FlowLayout: age como um processador de palavras, porém com componentes em vez de palavras. Cada componente recebe o tamanho que deseja, e eles são dispostos da esquerda para a direita na ordem que são adicionados (painel). GridLayout :divide o contêiner em uma grade de modo que os componentes podem ser colocados nas linhas e colunas. Os componentes são adicionados a um GridLayout iniciando a célula na parte superior esquerda da grade e prosseguindo da esquerda para a direita até a linha estar cheia. Então o processo continua da esquerda para direita na próxima linha e assim por diante. BoxLayout: Nesse tipo de layout, componentes podem ser dispostos em uma única linha ou em uma única coluna, porém arranjos de componentes bem complexos podem ser obtidos através da combinação desses componentes. Em BoxLayout os componentes mantêm sua dimensão natural. Tipicamente, esse tipo de layout não é utilizado diretamente, mas sim através de um container do tipo Box, que adota BoxLayout como padrão único de Gerenciamento de layout. Gerenciadores de Lay-Out São os gerenciadores de layout que determinam como os componentes irão ficar em seu programa, portanto um bom conhecimento sobre o funcionamento dos mesmos faz-se necessário para ter domínio de programação gráfica em Java. Geralmente, quando chamamos o método "add" para adicionar um componente na tela, ele será posicionado de acordo com o gerenciador de layout previamente configurado. A maior parte simplesmente vai adicionando os componentes com base na ordem em que foram programados, porém alguns outros, como o BorderLayout, necessitam que você informe a posição relativa no container. A escolha do gerenciador de layout depende muito das necessidades do programa. Por padrão todos objetos JPanel são configurados para usar o FlowLayout, enquanto um JFrame e JDialog já usam o BorderLayout como padrão. Em ambos os casos é usado o método "setLayout" para especificar um novo layout manager, sendo necessário passar para este método o tipo que desejamos. Exemplo com o gerenciador BorderLayout Exemplo com o gerenciador FlowLayout Exemplo com o gerenciador GridLayout Exemplo com o gerenciador BoxLayout Exemplo com o gerenciador BoxLayout Exercício da Calculadora - GUI Exercício da Calculadora – GUI – cont. Exercício da Calculadora – GUI – cont. Exercício da Calculadora – Texto. Exercício da Calculadora – Texto – cont.. BIBLIOGRAFIA BÁSICA PADRÃO SANTOS, Rafael. Introdução à Programação Orientada a Objetos Usando Java. 1ª ed. Rio de Janeiro: Campus - Elsevier, 2008. BIBLIOGRAFIA BÁSICA DA UNIDADE 1) DEITEL, Harvery M.. Java : Como Programar. 6ª ed. São Paulo: Pearson - Prentice Hall, 2007. 2) SIERRA, Kathy; BATES, Bert. Use a Cabeça! Java. 1ª ed. Rio de Janeiro: Alta Books, 2005. BIBLIOGRAFIA COMPLEMETAR 1) BARNES, David J.. PROGRAMAÇÃO ORIENTADA A OBJETOS COM JAVA : UMA INTRODUÇÃO PRÁTICA USANDO O BLUE J. 1ª ed. São Paulo: Pearson, 2004. 2) KURNIAWAN, Budi. Java para Web com Servlets, JSP e EJB. 1ª ed. Rio de Janeiro: Ciência Moderna, 2002. 3) GOMES ASCENCIO, Ana Fernanda; CAMPOS, Edilene A.V. de. Fundamentos da Programação de Computadores : Algoritmos, Pascal, C/C++ e Java. 2ª ed. São Paulo: Pearson - Prentice Hall, 2008. 4) HORSTMANN, Cay S.; CORNELL, Gary. Core Java 2 : Fundamentos. 7ª ed. Rio de Janeiro: Alta Books, 2005. 5) ANSELMO, Fernando. Tudo Sobre a JSP : Com o Netbeans em Aplicações Distribuídas. 1ª ed. São Paulo: VisualBooks, 2005.