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

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

L INGUAGEM DE P ROGRAMAÇÃO III Profa. Cintia Carvalho Oliveira Ba. Ciência da Computação - UFJF Mestre em Ciência da Computação - UFU.

Apresentações semelhantes


Apresentação em tema: "L INGUAGEM DE P ROGRAMAÇÃO III Profa. Cintia Carvalho Oliveira Ba. Ciência da Computação - UFJF Mestre em Ciência da Computação - UFU."— Transcrição da apresentação:

1 L INGUAGEM DE P ROGRAMAÇÃO III Profa. Cintia Carvalho Oliveira Ba. Ciência da Computação - UFJF Mestre em Ciência da Computação - UFU

2 I NTERFACE G RÁ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 C ENTRALIZAR 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 C RIANDO 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 L AYOUT 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 G ERENCIADORES DE L AYOUT 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 F LOW L AYOUT O mais simples. Componentes dispostos da direita para a esquerda.

9 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.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 G RID L AYOUT É 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 B ORDER L AYOUT 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 C ARD L AYOUT Pode agrupar diversos contêineres na forma de cartões. Apenas um contêiner é visível por vez.

18

19

20

21 T RATAMENTO DE E VENTOS 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 L ISTENER 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 JB UTTON

26 M ÉTODOS

27

28


Carregar ppt "L INGUAGEM DE P ROGRAMAÇÃO III Profa. Cintia Carvalho Oliveira Ba. Ciência da Computação - UFJF Mestre em Ciência da Computação - UFU."

Apresentações semelhantes


Anúncios Google