A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Linguagem de Programação III

Apresentações semelhantes


Apresentação em tema: "Linguagem de Programação III"— Transcrição da apresentação:

1 Linguagem de Programação III
Profa. Cintia Carvalho Oliveira Ba. Ciência da Computação - UFJF Mestre em Ciência da Computação - UFU

2 Interface Gráfica GUI – Graphical User Interface
Java possui duas bibliotecas gráficas: AWT (Abstract Window Toolkit) Swing Utilizaremos a biblioteca javax.swing

3 import javax.swing.JFrame; //importação da classe JFrame
public class PrimeiroSwing { JFrame janela = new JFrame(); //criamos um JFrame chamado 'janela' public static void main (String args[]){ new PrimeiroSwing(); } private PrimeiroSwing(){ janela.setTitle("Primeira Aplicação Gráfica"); //definimos o título da janela janela.setSize(350, 150); //definimos a largura e a altura da janela janela.setLocation(50, 50); //define a posição da janela na tela janela.setDefaultCloseOperation(JFrame.EXIT_ON_C LOSE); //define que ao fechar a janela, encerre a aplicação janela.setVisible(true); //mostramos a janela

4 Centralizar a janela Toolkit tk = Toolkit.getDefaultToolkit();
Dimension d = tk.getScreenSize(); int x = (d.width/ 2 ) – (350/2); int y = (d.height/2) – (150/2); Janela.setLocation(x, y);

5 Criando um botão Depois da definição do Jframe
JButton botao = new JButton("OK"); Dentro do JFrame, após a configuração do fechamento: janela.add(botao);

6 Layout e fechamento O botão ocupou todo o espaço do JFrame pois não possui um layout. O método setDefautCloseOperation() foi usado para o fechamento da janela: (JFrame.EXIT_ON_CLOSE) – encerra a aplicação (JFrame.HIDE_ON_CLOSE) – esconde a janela (JFrame.DISPOSE_ON_CLOSE) – destroi a janela mas a aplicação continua

7 Gerenciadores de Layout
A GUI é formada por componentes que chamamos de contêineres: FlowLayout, GridLayout, BorderLayout e CardLayout Caso não tenha um gerenciador, o objeto inserido considera todo o contêiner como uma única célula.

8 FlowLayout O mais simples.
Componentes dispostos da direita para a esquerda.

9 import java. awt. FlowLayout; import javax. swing
import java.awt.FlowLayout; import javax.swing.*; public class ExemploFlowLayout { JFrame janela = new JFrame(); //criamos e instaciamos um JFrame chamado 'janela' JPanel painel = new JPanel(); //criamos um JPanel chamado painel JLabel rotulo = new JLabel("Seu nome: "); //criamos um JLabel chamado rotulo e com o texto "Seu nome: " JTextField texto = new JtextField(5); //criamos um JTextField chamado texto com o tamanho 5 JButton botao = new JButton("OK"); //criamos e instanciamos um JButton chamado 'botao' e com o texto "OK" public static void main (String args[]){ new ExemploFlowLayout(); }

10 private ExemploFlowLayout(){ janela
private ExemploFlowLayout(){ janela.setTitle("Exemplo de um FlowLayout"); //definimos o título da janela janela.setSize(300, 100); //definimos a largura e a altura da janela janela.setLocation(50, 50); //define a posição da janela na tela janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE ); //define que ao fechar a janela, encerre a aplicação painel.setLayout(new FlowLayout(FlowLayout.CENTER, 30, 20)); //definimos o layout do painel painel.add(rotulo); //adicionamos o rotulo ao painel painel.add(texto); //adicionamos o texto ao painel painel.add(botao); //adicionamos o botao ao painel janela.add(painel); //adicionamos o painel à janela //mostramos a janela janela.setVisible(true); }

11 GridLayout É um gerenciador que divide o contêiner em um conjunto de células de mesma dimensão. A ordem de exibição é de acordo com a ordem de inserção. nome-do-conteiner.setLayout(new GridLayout(linhas, colunas, espaçamentohorizontal, espaçamento-vertical)

12

13

14 BorderLayout Divide o contêiner em cinco regiões:
North (região superior) South (região inferior) West (região à esquerda) East (região à direita) Center (região central) Ao adicionar o elemento indicamos a que região ele pertence. Permite somente um elemento por região. Na ausência de elementos em alguma região, as outras ocupam o espaço.

15

16

17 CardLayout Pode agrupar diversos contêineres na forma de cartões. Apenas um contêiner é visível por vez.

18

19

20

21 Tratamento de Eventos Desejamos interpretar as ações do usuário, para isso devemos implementar uma ou mais interfaces receptoras de eventos: ActionListener: clique em um botão, “enter” em um campo; FocusListener: gerado quando um componente recebe ou perde foco; MouseListener: gerado quando o mouse é clicado, ou entra em um componente; WindowListener: gerado quando ocorre um evento em janela; maximizar, minimizar, etc.

22 Listener e tratamento do evento
A interface ActionListener , exige um método actionPerformed, que trata o evento gerado. O método addActionListener registra quais componentes serão observados.

23

24

25 JButton

26 Métodos

27

28


Carregar ppt "Linguagem de Programação III"

Apresentações semelhantes


Anúncios Google