ebook img

Java básico 2 PDF

107 Pages·2013·16.6 MB·Portuguese
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Java básico 2

Java básico 2 Paulo Henrique Cayres Rio de Janeiro Escola Superior de Redes 2013 Java básico 2 Java básico 2 SUMÁRIO 1 Interfaces Gráficas e seus elementos básicos ................................................................ 1 Exercício de nivelamento 1 – Interfaces Gráficas .................................................. 1 1.1 Introdução .................................................................................................. 2 1.2 Janelas ........................................................................................................ 3 1.3 Exibição de Informações ............................................................................ 5 1.4 Objetos Gráficos e o Método paintComponent ......................................... 5 1.5 Texto, Fontes e Cores ................................................................................. 7 1.6 Formas Geométricas .................................................................................. 7 1.7 Imagens ...................................................................................................... 7 2 Gerenciamento de Eventos e POO ................................................................................. 9 2.1 Eventos ....................................................................................................... 9 2.1.1 Hierarquia de Eventos do AWT ............................................................ 10 2.1.2 Eventos de Foco ................................................................................... 10 2.1.3 Eventos de Teclado .............................................................................. 11 2.1.4 Eventos de Mouse ................................................................................ 11 3 O Pacote Swing ............................................................................................................. 13 3.1 Componentes visuais-gráficos do pacote Swing ...................................... 13 3.1.1 Padrão MVC .......................................................................................... 13 3.2 Gerenciamento de Layout de Visualização .............................................. 15 3.2.1 Bordas ................................................................................................... 16 3.2.2 Painéis .................................................................................................. 17 3.2.3 Grade .................................................................................................... 17 3.2.4 Caixa ..................................................................................................... 18 3.2.5 Bolsa de Grade ..................................................................................... 19 3.2.6 Não usar Gerenciador de Layout ......................................................... 21 Exercícios de Fixação 1 – GUI em Java ................................................................. 22 Atividade 1 – GUI em Java .................................................................................... 22 Atividade 2 – GUI em Java (complementar) ......................................................... 22 3.3 Campos de Entrada de Texto ................................................................... 23 3.3.1 Campos de Texto .................................................................................. 23 3.3.2 Campos de Senha ................................................................................. 24 3.3.3 Áreas de Texto ...................................................................................... 24 3.3.4 Seleção de Texto .................................................................................. 25 3.4 Rótulos ...................................................................................................... 25 3.5 Caixas de Seleção ..................................................................................... 26 3.6 Botões de Rádio........................................................................................ 26 3.7 Borda ........................................................................................................ 27 3.8 Listas ......................................................................................................... 28 3.9 Combos ..................................................................................................... 29 Exercícios de Fixação 2 – GUI em Java ................................................................. 30 Atividade 1 – GUI em Java .................................................................................... 30 i Java básico 2 SUMÁRIO 1 Interfaces Gráficas e seus elementos básicos ................................................................ 1 Exercício de nivelamento 1 – Interfaces Gráficas .................................................. 1 1.1 Introdução .................................................................................................. 2 1.2 Janelas ........................................................................................................ 3 1.3 Exibição de Informações ............................................................................ 5 1.4 Objetos Gráficos e o Método paintComponent ......................................... 5 1.5 Texto, Fontes e Cores ................................................................................. 7 1.6 Formas Geométricas .................................................................................. 7 1.7 Imagens ...................................................................................................... 7 2 Gerenciamento de Eventos e POO ................................................................................. 9 2.1 Eventos ....................................................................................................... 9 2.1.1 Hierarquia de Eventos do AWT ............................................................ 10 2.1.2 Eventos de Foco ................................................................................... 10 2.1.3 Eventos de Teclado .............................................................................. 11 2.1.4 Eventos de Mouse ................................................................................ 11 3 O Pacote Swing ............................................................................................................. 13 3.1 Componentes visuais-gráficos do pacote Swing ...................................... 13 3.1.1 Padrão MVC .......................................................................................... 13 3.2 Gerenciamento de Layout de Visualização .............................................. 15 3.2.1 Bordas ................................................................................................... 16 3.2.2 Painéis .................................................................................................. 17 3.2.3 Grade .................................................................................................... 17 3.2.4 Caixa ..................................................................................................... 18 3.2.5 Bolsa de Grade ..................................................................................... 19 3.2.6 Não usar Gerenciador de Layout ......................................................... 21 Exercícios de Fixação 1 – GUI em Java ................................................................. 22 Atividade 1 – GUI em Java .................................................................................... 22 Atividade 2 – GUI em Java (complementar) ......................................................... 22 3.3 Campos de Entrada de Texto ................................................................... 23 3.3.1 Campos de Texto .................................................................................. 23 3.3.2 Campos de Senha ................................................................................. 24 3.3.3 Áreas de Texto ...................................................................................... 24 3.3.4 Seleção de Texto .................................................................................. 25 3.4 Rótulos ...................................................................................................... 25 3.5 Caixas de Seleção ..................................................................................... 26 3.6 Botões de Rádio........................................................................................ 26 3.7 Borda ........................................................................................................ 27 3.8 Listas ......................................................................................................... 28 3.9 Combos ..................................................................................................... 29 Exercícios de Fixação 2 – GUI em Java ................................................................. 30 Atividade 1 – GUI em Java .................................................................................... 30 i Java básico 2 Java básico 2 Atividade 2 – GUI em Java (complementar) ......................................................... 31 7.2 DAO e Java Bean ....................................................................................... 69 3.10 Menus ....................................................................................................... 31 7.3 Instruções Preparadas .............................................................................. 70 3.11 Caixas de Diálogo...................................................................................... 34 7.4 Executando atualizações em fontes de dados ......................................... 71 3.12 Ordem de Travessia: Tab Order ............................................................... 34 7.5 Exemplo Java Bean ................................................................................... 72 Exercícios de Fixação 3 – GUI em Java ................................................................. 35 7.6 Exemplo DAO ............................................................................................ 73 Atividade 1 – GUI em Java .................................................................................... 35 7.7 Exemplo de Inclusão ................................................................................. 74 Atividade 2 – GUI em Java (complementar) ......................................................... 36 7.8 Exemplo Alteração ................................................................................... 74 4 Tratamento de Erros .................................................................................................... 37 7.9 Exemplo de Consulta ................................................................................ 75 Exercício de nivelamento – Tratamento de erros ................................................................ 37 7.10 Exemplo de Exclusão ................................................................................ 75 4.1 Tipos de exceções ..................................................................................... 38 Exercícios de Fixação 7 – Java JDBC...................................................................... 76 4.2 Descrever Exceções em Métodos ............................................................ 39 Atividade 1 – Java JDBC ........................................................................................ 76 4.3 Levantar uma Exceção .............................................................................. 40 Atividade 2 – Java JDBC ........................................................................................ 77 4.4 Criar Novas Exceções ................................................................................ 41 8 Gerenciamento de Transações .................................................................................... 79 4.5 Capturando Exceções ............................................................................... 41 8.1 Stored Procedures .................................................................................... 79 Exercícios de Fixação 4 – Tratamento de Erros .................................................... 42 8.2 Transações ................................................................................................ 80 Atividade 1 – GUI em Java .................................................................................... 43 8.3 Execução em Batch................................................................................... 81 Atividade 2 – GUI em Java (complementar) ......................................................... 43 Exercícios de Fixação 8 – Java JDBC...................................................................... 82 5 Controle de entrada (I/O) ............................................................................................. 45 Atividade 1 – Java JDBC ........................................................................................ 83 Exercício de nivelamento – I/O ............................................................................................ 45 Atividade 2 – Java JDBC ........................................................................................ 84 5.1 Stream em Java ........................................................................................ 47 9 Biblioteca Jasper – Relatórios ...................................................................................... 85 5.2 Entrada e Saída baseada em Bytes .......................................................... 48 9.1 Biblioteca JasperReport ............................................................................ 85 5.3 Serialização de Objetos ............................................................................ 49 9.2 Exemplo de utilização das etapas para criação de relatórios .................. 86 Exercícios de Fixação 5 – Java I/O ........................................................................ 52 9.2.1 1ª Etapa – Criação da conexão ............................................................. 86 Atividade 1 – Java I/O ........................................................................................... 52 9.2.2 2ª Etapa – Criação da conexão ............................................................. 88 Atividade 2 – Java I/O (complementar) ................................................................ 52 9.2.3 3ª Etapa – Visualização do relatório .................................................... 94 6 Java Database Conectivity - JDBC ................................................................................. 55 9.3 Incluindo relatório na aplicação Java ....................................................... 95 Exercício de nivelamento – JDBC ......................................................................................... 55 9.4 Classe java para geração de relatório ...................................................... 95 6.1 O que é JDBC ............................................................................................ 55 9.5 Gerando um relatório na interface gráfica .............................................. 96 6.2 Componetes JDBC .................................................................................... 57 9.6 Relatório com Passagem de Parâmetros ................................................. 97 6.3 Driver JDBC ............................................................................................... 58 Exercícios de Fixação 9 – Java JDBC...................................................................... 99 6.4 Classe Connection .................................................................................... 60 Atividade 1 – Java JDBC ........................................................................................ 99 6.5 Classe DriverManager e URLs JDBC .......................................................... 60 Atividade 2 – Java JDBC ...................................................................................... 100 6.6 Princípios das aplicações JDBC ................................................................. 61 10 Bibliografia ................................................................................................................. 101 6.6.1 Operação Interativa: comandos SQL estáticos .................................... 62 6.7 Statement ................................................................................................. 62 6.8 ResultSet ................................................................................................... 62 6.8.1 ResultSet rolável e atualizável .............................................................. 64 6.8.2 Fechando Recursos ............................................................................... 66 Exercícios de Fixação 6 – Java JDBC...................................................................... 66 Atividade 1 – Java JDBC ........................................................................................ 66 Atividade 2 – Java JDBC ........................................................................................ 67 7 Manipulando Resultados de Consultas ........................................................................ 67 7.1 Uso da classe Properties .......................................................................... 68 ii iii Java básico 2 Java básico 2 Atividade 2 – GUI em Java (complementar) ......................................................... 31 7.2 DAO e Java Bean ....................................................................................... 69 3.10 Menus ....................................................................................................... 31 7.3 Instruções Preparadas .............................................................................. 70 3.11 Caixas de Diálogo...................................................................................... 34 7.4 Executando atualizações em fontes de dados ......................................... 71 3.12 Ordem de Travessia: Tab Order ............................................................... 34 7.5 Exemplo Java Bean ................................................................................... 72 Exercícios de Fixação 3 – GUI em Java ................................................................. 35 7.6 Exemplo DAO ............................................................................................ 73 Atividade 1 – GUI em Java .................................................................................... 35 7.7 Exemplo de Inclusão ................................................................................. 74 Atividade 2 – GUI em Java (complementar) ......................................................... 36 7.8 Exemplo Alteração ................................................................................... 74 4 Tratamento de Erros .................................................................................................... 37 7.9 Exemplo de Consulta ................................................................................ 75 Exercício de nivelamento – Tratamento de erros ................................................................ 37 7.10 Exemplo de Exclusão ................................................................................ 75 4.1 Tipos de exceções ..................................................................................... 38 Exercícios de Fixação 7 – Java JDBC...................................................................... 76 4.2 Descrever Exceções em Métodos ............................................................ 39 Atividade 1 – Java JDBC ........................................................................................ 76 4.3 Levantar uma Exceção .............................................................................. 40 Atividade 2 – Java JDBC ........................................................................................ 77 4.4 Criar Novas Exceções ................................................................................ 41 8 Gerenciamento de Transações .................................................................................... 79 4.5 Capturando Exceções ............................................................................... 41 8.1 Stored Procedures .................................................................................... 79 Exercícios de Fixação 4 – Tratamento de Erros .................................................... 42 8.2 Transações ................................................................................................ 80 Atividade 1 – GUI em Java .................................................................................... 43 8.3 Execução em Batch................................................................................... 81 Atividade 2 – GUI em Java (complementar) ......................................................... 43 Exercícios de Fixação 8 – Java JDBC...................................................................... 82 5 Controle de entrada (I/O) ............................................................................................. 45 Atividade 1 – Java JDBC ........................................................................................ 83 Exercício de nivelamento – I/O ............................................................................................ 45 Atividade 2 – Java JDBC ........................................................................................ 84 5.1 Stream em Java ........................................................................................ 47 9 Biblioteca Jasper – Relatórios ...................................................................................... 85 5.2 Entrada e Saída baseada em Bytes .......................................................... 48 9.1 Biblioteca JasperReport ............................................................................ 85 5.3 Serialização de Objetos ............................................................................ 49 9.2 Exemplo de utilização das etapas para criação de relatórios .................. 86 Exercícios de Fixação 5 – Java I/O ........................................................................ 52 9.2.1 1ª Etapa – Criação da conexão ............................................................. 86 Atividade 1 – Java I/O ........................................................................................... 52 9.2.2 2ª Etapa – Criação da conexão ............................................................. 88 Atividade 2 – Java I/O (complementar) ................................................................ 52 9.2.3 3ª Etapa – Visualização do relatório .................................................... 94 6 Java Database Conectivity - JDBC ................................................................................. 55 9.3 Incluindo relatório na aplicação Java ....................................................... 95 Exercício de nivelamento – JDBC ......................................................................................... 55 9.4 Classe java para geração de relatório ...................................................... 95 6.1 O que é JDBC ............................................................................................ 55 9.5 Gerando um relatório na interface gráfica .............................................. 96 6.2 Componetes JDBC .................................................................................... 57 9.6 Relatório com Passagem de Parâmetros ................................................. 97 6.3 Driver JDBC ............................................................................................... 58 Exercícios de Fixação 9 – Java JDBC...................................................................... 99 6.4 Classe Connection .................................................................................... 60 Atividade 1 – Java JDBC ........................................................................................ 99 6.5 Classe DriverManager e URLs JDBC .......................................................... 60 Atividade 2 – Java JDBC ...................................................................................... 100 6.6 Princípios das aplicações JDBC ................................................................. 61 10 Bibliografia ................................................................................................................. 101 6.6.1 Operação Interativa: comandos SQL estáticos .................................... 62 6.7 Statement ................................................................................................. 62 6.8 ResultSet ................................................................................................... 62 6.8.1 ResultSet rolável e atualizável .............................................................. 64 6.8.2 Fechando Recursos ............................................................................... 66 Exercícios de Fixação 6 – Java JDBC...................................................................... 66 Atividade 1 – Java JDBC ........................................................................................ 66 Atividade 2 – Java JDBC ........................................................................................ 67 7 Manipulando Resultados de Consultas ........................................................................ 67 7.1 Uso da classe Properties .......................................................................... 68 ii iii Java básico 2 1 Interfaces Gráficas e seus elementos básicos Exercício de nivelamento 1 – Interfaces Gráficas Você já desenvolveu aplicações desktop que utilizaram Interfaces Gráficas com Usuários? Com qual linguagem de programação? Você poderia descrever alguns componentes visuais gráficos que utilizou para desenvolvimento destas interfaces? Breve Histórico:  AWT (Abstract Window Toolkit)  Java Foundation Classes (JFC)-Swing  Principais componentes visuais gráficos – GUI  Desenvolvimento de GUIs Java 1 Java básico 2 1 Interfaces Gráficas e seus elementos básicos Exercício de nivelamento 1 – Interfaces Gráficas Você já desenvolveu aplicações desktop que utilizaram Interfaces Gráficas com Usuários? Com qual linguagem de programação? Você poderia descrever alguns componentes visuais gráficos que utilizou para desenvolvimento destas interfaces? Breve Histórico:  AWT (Abstract Window Toolkit)  Java Foundation Classes (JFC)-Swing  Principais componentes visuais gráficos – GUI  Desenvolvimento de GUIs Java 1 Java básico 2 Java básico 2 1.1 Introdução Outra questão que vale a pensa ser ressaltada é o fato que a linguagem Java, antes de tudo prima pelo lema da portabilidade e as API de interface gráfica do Java não Quando a linguagem Java 1.0 foi lançada, ela continha somente a biblioteca de poderiam ser diferentes. A aparência das janelas construídas com a API Swing é única em classes AWT (Abstract Window Toolkit) para programação GUI (Graphical User todas as plataformas onde roda (Windows, KDE, Gnome). Com isso pode-se afirmar que a Interface) básica. A maneira que o AWT funciona é a delegação de criação de seus aplicação terá exatamente a mesma interface e aparência com pequenas variações geradas componentes GUI nativos. Na verdade, quando a criação de uma caixa de texto era feita, a por peculiaridades dos sistemas operacionais, como por exemplo, as fontes utilizadas nas linguagem criava por trás uma caixa semelhante (peer) que fazia todos os tratamentos. janelas. Grande parte da complexidade das classes e métodos do Swing está no fato da API Dessa maneira conseguia-se rodar os programas em várias plataformas, tendo o programa ter sido desenvolvida tendo em mente o máximo de portabilidade possível. Favorece-se, com o mesmo aspecto (HORSTMANN, 2003). por exemplo, o posicionamento relativo de componentes em detrimento do uso de posicionamento relativo que poderia prejudicar usuários comresoluções de tela diferentes Em aplicações mais complexas, essa metodologia não era muito produtiva, pois era da prevista. realmente difícil escrever determinados códigos. Outro problema era que o comportamento de determinados componentes mudava de plataforma para plataforma, ou determinados 1.2 Janelas ambientes não tinham uma vasta biblioteca de componentes gráficos, o que levava a um esforço muito grande para a padronização das aplicações. Uma janela de mais alto nível, que não está contida em nenhum outro componente, é chamada quadro (frame). Em AWT a classe é Frame. Em Swing é JFrame. Essa classe Em 1996 a Netscape criou a biblioteca GUI chamada IFC – Internet Foundation não é desenhada dentro de uma tela de desenho (canvas), portanto a moldura toda é Classes – que usava uma metodologia completamente diferente. Aqui, todos os desenha pelo gerenciador de janelas nativo. componentes eram desenhados numa tela em branco. Assim, os componentes gráficos se tornavam parecidos com os nativos das plataformas. A Sun trabalhou junto com a Netscape Os quadros são exemplos de contêineres, isto é, podem conter componentes de para aprimorar essa biblioteca, e criaram a biblioteca Swing. interface de usuário dentro deles. Por exemplo: Assim, o conjunto swing foi tornado o kit de ferramentas GUI oficial da JFC (Java import javax.swing.*; class FirstFrame extends JFrame { Foundation Classes). public FirstFrame() { setTitle("FirstFrame"); Evidentemente, os componentes do swing são um tanto quanto mais lentos que os setSize(300, 200); } criados usando AWT, mas o uso em máquinas mais modernas mostrou que a diferença não } é mais tão problemática. public class FirstTest { public static void main(String[] args) { O problema da aparência em relação ao sistema nativo foi resolvido, usando o JFrame frame = new FirstFrame(); frame.show(); conceito de look and feel, onde se pode escolher a aparência que se quer que o sistema } tenha. Mesmo assim, a Sun desenvolveu uma aparência independente de plataforma, } chamada Metal. A biblioteca swing se encontra em: javax.swing.*. Na versão atual a linguagem Java suporta duas bibliotecas gráficas: a AWT e a Swing. A biblioteca AWT foi a primeira API voltada para interfaces gráficas a surgir no Java. Posteriormente surgiu a biblioteca Swing (a partir do Java 1.2), que possui algumas melhorias com relação à antecessora. De uma forma geral, apesar do reza o senso comum, as bibliotecas gráficas são bastante simples no que diz respeito a conceitos necessários para usá-las. Os sentimentos de complexidade e dificuldade visualizados no aprendizado de interfaces gráficas em Java são devidos ao tamanho das bibliotecas e à enorme gama de possibilidades, as quais certamente assustarão o desenvolvedor de primeira viagem. As bibliotecas AWT e Swing as bibliotecas gráficas oficiais, sempre inclusas em qualquer pacote distribuído pela Sun. Porém, além destas, existem algumas outras bibliotecas de terceiros, sendo a mais famosa o SWT, desenvolvido pela IBM. 2 3 Java básico 2 Java básico 2 1.1 Introdução Outra questão que vale a pensa ser ressaltada é o fato que a linguagem Java, antes de tudo prima pelo lema da portabilidade e as API de interface gráfica do Java não Quando a linguagem Java 1.0 foi lançada, ela continha somente a biblioteca de poderiam ser diferentes. A aparência das janelas construídas com a API Swing é única em classes AWT (Abstract Window Toolkit) para programação GUI (Graphical User todas as plataformas onde roda (Windows, KDE, Gnome). Com isso pode-se afirmar que a Interface) básica. A maneira que o AWT funciona é a delegação de criação de seus aplicação terá exatamente a mesma interface e aparência com pequenas variações geradas componentes GUI nativos. Na verdade, quando a criação de uma caixa de texto era feita, a por peculiaridades dos sistemas operacionais, como por exemplo, as fontes utilizadas nas linguagem criava por trás uma caixa semelhante (peer) que fazia todos os tratamentos. janelas. Grande parte da complexidade das classes e métodos do Swing está no fato da API Dessa maneira conseguia-se rodar os programas em várias plataformas, tendo o programa ter sido desenvolvida tendo em mente o máximo de portabilidade possível. Favorece-se, com o mesmo aspecto (HORSTMANN, 2003). por exemplo, o posicionamento relativo de componentes em detrimento do uso de posicionamento relativo que poderia prejudicar usuários comresoluções de tela diferentes Em aplicações mais complexas, essa metodologia não era muito produtiva, pois era da prevista. realmente difícil escrever determinados códigos. Outro problema era que o comportamento de determinados componentes mudava de plataforma para plataforma, ou determinados 1.2 Janelas ambientes não tinham uma vasta biblioteca de componentes gráficos, o que levava a um esforço muito grande para a padronização das aplicações. Uma janela de mais alto nível, que não está contida em nenhum outro componente, é chamada quadro (frame). Em AWT a classe é Frame. Em Swing é JFrame. Essa classe Em 1996 a Netscape criou a biblioteca GUI chamada IFC – Internet Foundation não é desenhada dentro de uma tela de desenho (canvas), portanto a moldura toda é Classes – que usava uma metodologia completamente diferente. Aqui, todos os desenha pelo gerenciador de janelas nativo. componentes eram desenhados numa tela em branco. Assim, os componentes gráficos se tornavam parecidos com os nativos das plataformas. A Sun trabalhou junto com a Netscape Os quadros são exemplos de contêineres, isto é, podem conter componentes de para aprimorar essa biblioteca, e criaram a biblioteca Swing. interface de usuário dentro deles. Por exemplo: Assim, o conjunto swing foi tornado o kit de ferramentas GUI oficial da JFC (Java import javax.swing.*; class FirstFrame extends JFrame { Foundation Classes). public FirstFrame() { setTitle("FirstFrame"); Evidentemente, os componentes do swing são um tanto quanto mais lentos que os setSize(300, 200); } criados usando AWT, mas o uso em máquinas mais modernas mostrou que a diferença não } é mais tão problemática. public class FirstTest { public static void main(String[] args) { O problema da aparência em relação ao sistema nativo foi resolvido, usando o JFrame frame = new FirstFrame(); frame.show(); conceito de look and feel, onde se pode escolher a aparência que se quer que o sistema } tenha. Mesmo assim, a Sun desenvolveu uma aparência independente de plataforma, } chamada Metal. A biblioteca swing se encontra em: javax.swing.*. Na versão atual a linguagem Java suporta duas bibliotecas gráficas: a AWT e a Swing. A biblioteca AWT foi a primeira API voltada para interfaces gráficas a surgir no Java. Posteriormente surgiu a biblioteca Swing (a partir do Java 1.2), que possui algumas melhorias com relação à antecessora. De uma forma geral, apesar do reza o senso comum, as bibliotecas gráficas são bastante simples no que diz respeito a conceitos necessários para usá-las. Os sentimentos de complexidade e dificuldade visualizados no aprendizado de interfaces gráficas em Java são devidos ao tamanho das bibliotecas e à enorme gama de possibilidades, as quais certamente assustarão o desenvolvedor de primeira viagem. As bibliotecas AWT e Swing as bibliotecas gráficas oficiais, sempre inclusas em qualquer pacote distribuído pela Sun. Porém, além destas, existem algumas outras bibliotecas de terceiros, sendo a mais famosa o SWT, desenvolvido pela IBM. 2 3 Java básico 2 Java básico 2 No nosso caso, só precisamos tratar o método windowClosing. Fica incômodo ter que implementar seis métodos vazios. Para isso existe a classe WindowAdapter, que implementa todos esses sete métodos como sendo vazios. Com isso, pode-se só sobrepor os métodos que se quer tratar: class Terminator extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit(0); } } No modelo de eventos do Swing, deve-se definir a constante pertencente a classe WindowsConstantis como parâmetro do método setDefaultCloseOperation() para que a instância de JFrame consiga tratar o evento que correspondente ao fechamento da janela da aplicação em desenvolvimento. A configuração da chamada do método seria setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);. Figura 01 – Exemplo JFrame. Nesse exemplo, a classe FirstFrame estende a classe JFrame. Quando a classe 1.3 Exibição de Informações FirstTest instancia um FirstFrame (new FirstFrame()) e chama show(), esse frame será mostrado, fazendo com que seja aberta uma nova janela. Desenhar uma string diretamente num quadro não é considerada uma boa técnica de programação, apesar de possível. Mas esse componente é projetado para ser um contêiner No construtor de FirstFrame, a chamada de setTitle() seta o título da janela. A de outros componentes, estes sim podendo possuir dados. chamada de setSize() seta o tamanho da janela, em pixels. Quando se quiser setar a localização dessa janela, pode-se chamar o método setLocation(). A estrutura de um JFrame é complexa, mas o que nos interessa é a área de conteúdo. Essa é a área onde os componentes serão adicionados. Para se encerrar um programa, não adianta somente fechar a janela, deve-se sair do programa e desligar a virtual machine. Para isso, deve-se tratar o evento de saída do Suponha que se queira inserir no frame um painel (JPanel) para se imprimir uma programa. Eventos serão vistos com mais cuidado mais adiante, mas por agora temos que string dentro. O código seria: saber como tratar com esse evento básico, o de fechamento de aplicativo. // obtenção da área de conteúdo Container painelConteudo = frame.getContentPane(); No modelo de eventos do AWT, deve-se informar ao frame qual é o objeto que // criação do componente JPanel p = new JPanel(); quer saber quando ele for fechar. Esse objeto (o ouvinte, o que tratará o evento) deve ser // adição do componente ao frame uma instância de uma classe que implementa a interface WindowsListener. No nosso painelConteudo.add(p); exemplo, essa classe será chamada Terminator. Em seguida, precisa-se adicionar um objeto da classe Terminator ao frame, para que ele seja ouvinte da janela. 1.4 Objetos Gráficos e o Método paintComponent class FirstFrame extends JFrame { Sempre que se precisa de um componente gráfico parecido com um componente do public FirstFrame() { Terminator exitOnClose = new Terminator(); swing, pode-se usar herança para criar uma nova classe e depois sobrepor ou adicionar AddWindowListener(exitOnClose); métodos para satisfazer as necessidades. ... Mas se for analisada a interface WindowListener, percebe-se que existem sete Para desenhar um painel, deve-se: métodos que devem ser sobrepostos: public void windowActivated(WindowEvent e)  Definir uma classe que estenda JPanel; public void windowClosed(WindowEvent e) public void windowClosing(WindowEvent e)  Sobrepor o método paintComponent dessa classe. public void windowDeactivated(WindowEvent e) public void windowDeiconified(WindowEvent e) public void windowIconified(WindowEvent e) public void windowOpened(WindowEvent e) 4 5

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.