Interfaces Gráficas POO. Prof. Márcio Delamaro

Tamanho: px
Começar a partir da página:

Download "Interfaces Gráficas POO. Prof. Márcio Delamaro"

Transcrição

1 Interfaces Gráficas POO Prof. Márcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/83

2 GUI Interface Gráfica do Usuário Em Java usamos o pacote Swing javax.swing Possui um conjunto de classes que permitem a construção de interfaces Vamos ver os conceitos básicos Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 2/83

3 Componente básico Toda GUI tem uma janela Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 3/83

4 Componente básico Toda GUI tem uma janela Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 4/83

5 Componente básico Toda GUI tem uma janela Bordas, botões, menu. Vêm de graça com a janela. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 5/83

6 Componente básico Toda GUI tem uma janela Bordas, botões, menu. Vêm de graça com a janela. Para que essa janela apareça, basta: criar um objeto mandar ele aparecer Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 6/83

7 javax.swing.jframe public class HelloGUI { public static void main(string[] args) { JFrame frame = new JFrame(); frame.setvisible(true); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 7/83

8 javax.swing.jframe public class HelloGUI { public static void main(string[] args) { JFrame frame = new JFrame( Hello world ); frame.setvisible(true); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 8/83

9 javax.swing.jframe public class HelloGUI { public static void main(string[] args) { JFrame frame = new JFrame( Hello world ); frame.setvisible(true); Diversas características do nosso frame podem ser alterados. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 9/83

10 Mas antes disso... Não usamos diretamenta a classe Jframe Costumamos criar a nossa própria classe Que estende a classe Jframe Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 10/83

11 Nosso próprio frame public class HelloGUI extends JFrame { public static void main(string[] args) { HelloGUI frame = new HelloGUI(); frame.setvisible(true); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 11/83

12 Nosso próprio frame public class HelloGUI extends JFrame { public static void main(string[] args) { HelloGUI frame = new HelloGUI(); frame.setvisible(true); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 12/83

13 Nosso próprio frame com título public class HelloGUI extends JFrame { public HelloGUI() { super("hello world"); public static void main(string[] args) { HelloGUI frame = new HelloGUI(); frame.setvisible(true); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 13/83

14 Algumas configurações public static void main(string[] args) { HelloGUI frame = new HelloGUI(); frame.setsize(400, 200); frame.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE); frame.setvisible(true); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 14/83

15 Algumas configurações public static void main(string[] args) { HelloGUI frame = new HelloGUI(); frame.setsize(400, 200); frame.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE); frame.setvisible(true); Determina o tamanho da janela Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 15/83

16 Algumas configurações public static void main(string[] args) { HelloGUI frame = new HelloGUI(); frame.setsize(400, 200); frame.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE); frame.setvisible(true); Determina o tamanho da janela Determina o que fazer ao fechar a janela. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 16/83

17 Interface Para criar a GUI precisamos dos components Vamos adicionar os componentes à Janela Ou seja, vamos adicionar objetos dentro do nosso frame Para cada tipo de componente temos uma classe no swing Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 17/83

18 JLabel Esse componente aparece apenas como uma mensagem (curta) dentro do frame Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 18/83

19 E o que acontece... public HelloGUI() { super("hello world"); JLabel labelhello = new JLabel("Hello interface"); this.add(labelhello); JLabel labelhello2 = new JLabel("Bom dia interface"); this.add(labelhello2); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 19/83

20 E o que acontece... public HelloGUI() { super("hello world"); JLabel labelhello = new JLabel("Hello interface"); this.add(labelhello); JLabel labelhello2 = new JLabel("Bom dia interface"); this.add(labelhello2); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 20/83

21 Layout É preciso determinar a forma como os componentes vão ser inseridos Qual vai ser o posicionamento deles dentro da janela Isso é feito determinando qual o leiaute da janela Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 21/83

22 FlowLayout public HelloGUI() { super("hello world"); this.setlayout(new FlowLayout()); this.add(new JLabel("Label 1")); this.add(new JLabel("Label variado e bem grande 2")); this.add(new JLabel("Label três")); this.add(new JLabel("Label 4")); this.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 22/83

23 FlowLayout public HelloGUI() { super("hello world"); this.setlayout(new FlowLayout()); this.add(new JLabel("Label 1")); this.add(new JLabel("Label variado e bem grande 2")); this.add(new JLabel("Label três")); this.add(new JLabel("Label 4")); this.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 23/83

24 FlowLayout public HelloGUI() { super("hello world"); this.setlayout(new FlowLayout()); this.add(new JLabel("Label 1")); this.add(new JLabel("Label variado e bem grande 2")); this.add(new JLabel("Label três")); this.add(new JLabel("Label 4")); this.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 24/83

25 FlowLayout public HelloGUI() { super("hello world"); this.setlayout(new FlowLayout()); this.add(new JLabel("Label 1")); this.add(new JLabel("Label variado e bem grande 2")); this.add(new JLabel("Label três")); this.add(new JLabel("Label 4")); this.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 25/83

26 FlowLayout A flow layout arranges components in a directional flow, much like lines of text in a paragraph. The flow direction is determined by the container's componentorientation property and may be one of two values: ComponentOrientation.LEFT_TO_RIGHT ComponentOrientation.RIGHT_TO_LEFT Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 26/83

27 FlowLayout public HelloGUI() { super("hello world"); this.setlayout(new FlowLayout()); JPanel jp = (JPanel) this.getcontentpane(); jp.setcomponentorientation(componentorientation.right_to_left); this.add(new JLabel("Label 1")); this.add(new JLabel("Label variado e bem grande 2")); this.add(new JLabel("Label três")); this.add(new JLabel("Label 4")); this.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 27/83

28 FlowLayout public HelloGUI() { super("hello world"); this.setlayout(new FlowLayout()); JPanel jp = (JPanel) this.getcontentpane(); jp.setcomponentorientation(componentorientation.right_to_left); this.add(new JLabel("Label 1")); this.add(new JLabel("Label variado e bem grande 2")); this.add(new JLabel("Label três")); this.add(new JLabel("Label 4")); this.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 28/83

29 FlowLayout public HelloGUI() { super("hello world"); this.setlayout(new FlowLayout()); JPanel jp = (JPanel) this.getcontentpane(); jp.setcomponentorientation(componentorientation.right_to_left); this.add(new JLabel("Label 1")); this.add(new JLabel("Label variado e bem grande 2")); this.add(new JLabel("Label três")); this.add(new JLabel("Label 4")); this.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 29/83

30 JPanel Esse objeto é onde os objetos são realmente colocados Dentro de um JFrame já existe um Jpanel Ao inserir um componente, estamos realmente inserindo no JPanel Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 30/83

31 No exemplo public HelloGUI() { super("hello world"); JPanel jp = (JPanel) this.getcontentpane(); jp.setcomponentorientation(componentorientation.right_to_left); jp.setlayout(new FlowLayout()); jp.add(new JLabel("Label 1")); jp.add(new JLabel("Label variado e bem grande 2")); jp.add(new JLabel("Label três")); jp.add(new JLabel("Label 4")); jp.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 31/83

32 No exemplo public HelloGUI() { super("hello world"); JPanel jp = (JPanel) this.getcontentpane(); jp.setcomponentorientation(componentorientation.right_to_left); jp.setlayout(new FlowLayout()); jp.add(new JLabel("Label 1")); jp.add(new JLabel("Label variado e bem grande 2")); jp.add(new JLabel("Label três")); jp.add(new JLabel("Label 4")); jp.add(new JLabel("Label hello 5")); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 32/83

33 Outros leiautes The GridLayout class is a layout manager that lays out a container's components in a rectangular grid. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 33/83

34 Outros leiautes The GridLayout class is a layout manager that lays out a container's components in a rectangular grid. jp.setlayout(new GridLayout(3,2)); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 34/83

35 BorderLayout A border layout lays out a container, arranging and resizing its components to fit in five regions: north, south, east, west, and center Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 35/83

36 BorderLayout A border layout lays out a container, arranging and resizing its components to fit in five regions: north, south, east, west, and center public HelloGUI() { super("hello world"); JPanel jp = (JPanel) this.getcontentpane(); jp.setlayout(new BorderLayout()); jp.add(new JLabel("Label 1"), BorderLayout.SOUTH); jp.add(new JLabel("Label variado e bem grande 2"), BorderLayout.NORTH); jp.add(new JLabel("Label três"), BorderLayout.EAST); jp.add(new JLabel("Label 4"), BorderLayout.WEST); jp.add(new JLabel("Label hello 5"), BorderLayout.CENTER); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 36/83

37 BorderLayout A border layout lays out a container, arranging and resizing its components to fit in five regions: north, south, east, west, and center public HelloGUI() { super("hello world"); JPanel jp = (JPanel) this.getcontentpane(); jp.setlayout(new BorderLayout()); jp.add(new JLabel("Label 1"), BorderLayout.SOUTH); jp.add(new JLabel("Label variado e bem grande 2"), BorderLayout.NORTH); jp.add(new JLabel("Label três"), BorderLayout.EAST); jp.add(new JLabel("Label 4"), BorderLayout.WEST); jp.add(new JLabel("Label hello 5"), BorderLayout.CENTER); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 37/83

38 BorderLayout A border layout lays out a container, arranging and resizing its components to fit in five regions: north, south, east, west, and center public HelloGUI() { super("hello world"); JPanel jp = (JPanel) this.getcontentpane(); jp.setlayout(new BorderLayout()); jp.add(new JLabel("Label 1"), BorderLayout.SOUTH); jp.add(new JLabel("Label variado e bem grande 2"), BorderLayout.NORTH); jp.add(new JLabel("Label três"), BorderLayout.EAST); jp.add(new JLabel("Label 4"), BorderLayout.WEST); jp.add(new JLabel("Label hello 5"), BorderLayout.CENTER); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 38/83

39 Interação Uma vez definidos os componentes da interface é preciso interagir com eles Por exemplo, ao clicar em um botão, nosso programa precisa saber que esse evento aconteceu Para isso, precisamos registrar um Listener junto ao componente Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 39/83

40 JButton public Interact() { super("hello world"); JPanel jp = (JPanel) this.getcontentpane(); jp.setlayout(new GridLayout(3,1)); label = new JLabel(WELLCOME); nome = new JTextField(); buttonok = new JButton("Confirma"); jp.add(label); jp.add(nome); jp.add(buttonok); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 40/83

41 JButton public Interact() { super("hello world"); JPanel jp = (JPanel) this.getcontentpane(); jp.setlayout(new GridLayout(3,1)); label = new JLabel(WELLCOME); nome = new JTextField(); buttonok = new JButton("Confirma"); jp.add(label); jp.add(nome); jp.add(buttonok); 3 components alinhados verticalmente Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 41/83

42 JButton public Interact() { super("hello world"); JPanel jp = (JPanel) this.getcontentpane(); jp.setlayout(new GridLayout(3,1)); label = new JLabel(WELLCOME); nome = new JTextField(); buttonok = new JButton("Confirma"); jp.add(label); jp.add(nome); jp.add(buttonok); 3 components alinhados verticalmente Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 42/83

43 JButton Listener Nada acontece ao clicar o botão Isso porque o nosso programa não foi preparado para tratar o evento do botão Vamos usar o próprio objeto para fazer esse tramamento buttonok.addactionlistener(this); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 43/83

44 ActionListener Para que a nossa classe possa tratar o evento ela precisa implementr essa interface Ou seja, public class Interact extends JFrame implements ActionListener { E public void actionperformed(actionevent e) { Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 44/83

45 Em resumo Com a chamada buttonok.addactionlistener(this); Estamos dizendo que o método actionperformed, do corrente objeto vai ser chamada ao se clicar no botão Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 45/83

46 public void actionperformed(actionevent e) { String s = nome.gettext(); s = WELLCOME + " " + s; label.settext(s); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 46/83

47 public void actionperformed(actionevent e) { String s = nome.gettext(); s = WELLCOME + " " + s; label.settext(s); Pega o nome digitado e modifica o label. Coloca Bemvindo + nome digitado. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 47/83

48 public void actionperformed(actionevent e) { String s = nome.gettext(); s = WELLCOME + " " + s; label.settext(s); Pega o nome digitado e modifica o label. Coloca Bemvindo + nome digitado. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 48/83

49 Vários componentes para interagir Na mesma interface podemos ter vários componetes que geram ações Podemos ter um objeto listener para cada objeto Ou podemos ter um único listener para todos eles Nesse caso precisamos de uma forma de saber quem gerou o evento Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 49/83

50 Dois botões buttonok = new JButton("Confirma"); buttonlimpa = new JButton("Limpa"); buttonok.addactionlistener(this); buttonlimpa.addactionlistener(this); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 50/83

51 Aproveitando... jp.add(label); jp.add(nome); JPanel jp2 = new JPanel(new FlowLayout()); jp2.add(buttonok); jp2.add(buttonlimpa); jp.add(jp2); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 51/83

52 Aproveitando... jp.add(label); jp.add(nome); JPanel jp2 = new JPanel(new FlowLayout()); jp2.add(buttonok); jp2.add(buttonlimpa); jp.add(jp2); Insere esse painel na 3a posição do grid Cria um novo painel para inserir os botões. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 52/83

53 Aproveitando... jp.add(label); jp.add(nome); JPanel jp2 = new JPanel(new FlowLayout()); jp2.add(buttonok); jp2.add(buttonlimpa); jp.add(jp2); Insere esse painel na 3a posição do grid Cria um novo painel para inserir os botões. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 53/83

54 Mas não funciona O problema é que os dois botões estão sendo tratados pelo mesmo listenar Ou seja, estão fazendo a mesma coisa Vamos então identificar cada botão buttonok = new JButton("Confirma"); buttonlimpa = new JButton("Limpa"); buttonok.addactionlistener(this); buttonok.setactioncommand("confirma"); buttonlimpa.addactionlistener(this); buttonlimpa.setactioncommand("limpa"); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 54/83

55 Mas não funciona O problema é que os dois botões estão sendo tratados pelo mesmo listenar Ou seja, estão fazendo a mesma coisa Vamos então identificar cada botão buttonok = new JButton("Confirma"); buttonlimpa = new JButton("Limpa"); buttonok.addactionlistener(this); buttonok.setactioncommand("confirma"); buttonlimpa.addactionlistener(this); buttonlimpa.setactioncommand("limpa"); Simplesmente associamos um nome com o botão Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 55/83

56 E na hora de public void actionperformed(actionevent e) { if ("confirma".equals(e.getactioncommand())) { String s = nome.gettext(); s = WELLCOME + " " + s; label.settext(s); else if ("limpa".equals(e.getactioncommand())) { nome.settext(""); String s = WELLCOME; label.settext(s); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 56/83

57 E na hora de public void actionperformed(actionevent e) { if ("confirma".equals(e.getactioncommand())) { String s = nome.gettext(); s = WELLCOME + " " + s; label.settext(s); else Vai retornar aquele string associado ao botão. if ("limpa".equals(e.getactioncommand())) { nome.settext(""); String s = WELLCOME; label.settext(s); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 57/83

58 Menus Os menus são componentes que não precisam ser posicionados Eles ficam pendurados na barra de menus da janela (do frame) Uma barra de menu pode ter vários menus Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 58/83

59 Menus Os menus são componentes que não precisam ser posicionados Eles ficam pendurados na barra de menus da janela (do frame) Uma barra de menu pode ter vários menus Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 59/83

60 Menus Os menus são componentes que não precisam ser posicionados Eles ficam pendurados na barra de menus da janela (do frame) Uma barra de menu pode ter vários menus Barra de menus (JMenuBar) Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 60/83

61 Menus Os menus são componentes que não precisam ser posicionados Eles ficam pendurados na barra de menus da janela (do frame) Uma barra de menu pode ter vários menus Menu (JMenu) Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 61/83

62 Menus Os menus são componentes que não precisam ser posicionados Eles ficam pendurados na barra de menus da janela (do frame) Uma barra de menu pode ter vários menus Menu item (JMenuItem) Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 62/83

63 Como funciona Dentro de uma barra de menus (JMenuBar) nós inserimos os menus (JMenu) Dentro de um menu (JMenu) nós inserimos os itens de menu (JMenuItem) Cada item de menu, ao ser selecionado, gera um evento que pode ser tratado pelo ActionListener Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 63/83

64 Criar a barra JMenuBar menubar = new JMenuBar(); this.setjmenubar(menubar); JMenu jb = new JMenu("Arquivo"); menubar.add(jb); Insere a barra no frame Cria também o menu e insere na barra Menu está vazio Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 64/83

65 Criar a barra JMenuBar menubar = new JmenuBar(); this.setjmenubar(menubar); JMenu jb = new JMenu("Arquivo"); menubar.add(jb); Insere a barra no frame Cria também o menu e insere na barra Menu está vazio Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 65/83

66 Criar os itens JMenuItem mi = new JMenuItem("Abrir"); mi.setactioncommand("abrir_arquivo"); mi.addactionlistener(this); jb.add(mi); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 66/83

67 Criar os itens JMenuItem mi = new JMenuItem("Abrir"); mi.setactioncommand("abrir_arquivo"); mi.addactionlistener(this); jb.add(mi); Cria o item de menu Abrir. Adiciona o listener e identifica o evento. Adiciona o item ao menu que havia sido criado. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 67/83

68 Criar os outros itens mi = new JMenuItem("Fechar"); mi.setactioncommand("fechar_arquivo"); mi.addactionlistener(this); jb.add(mi); jb.addseparator(); mi = new JMenuItem("Sair"); mi.setactioncommand("sair_programa"); mi.addactionlistener(this); jb.add(mi); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 68/83

69 Criar os outros itens mi = new JMenuItem("Fechar"); mi.setactioncommand("fechar_arquivo"); mi.addactionlistener(this); jb.add(mi); jb.addseparator(); mi = new JMenuItem("Sair"); mi.setactioncommand("sair_programa"); mi.addactionlistener(this); jb.add(mi); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 69/83

70 Submenus Em vez de itens de menus, podemos adicionar um menu dentro de outro Isso faz com que criemos um sub menu Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 70/83

71 Implementando JMenu criar = new JMenu("Criar"); jb.add(criar); Criado um novo menu e inserido no que já existia Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 71/83

72 Implementando JMenu criar = new JMenu("Criar"); jb.add(criar); mi = new JMenuItem("Texto"); mi.setactioncommand("criar_texto"); mi.addactionlistener(this); criar.add(mi); mi = new JMenuItem("Binário"); mi.setactioncommand("criar_binario"); mi.addactionlistener(this); criar.add(mi); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 72/83

73 Implementando JMenu criar = new JMenu("Criar"); jb.add(criar); mi = new JMenuItem("Texto"); mi.setactioncommand("criar_texto"); mi.addactionlistener(this); criar.add(mi); mi = new JMenuItem("Binário"); mi.setactioncommand("criar_binario"); mi.addactionlistener(this); criar.add(mi); Criados e adicionados os itens de menu Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 73/83

74 Outros componentes Checkbox Radio Button Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 74/83

75 Outros componentes Checkbox Radio Button Check boxes are similar to radio buttons but their selection model is different, by convention. Any number of check boxes in a group none, some, or all can be selected. A group of radio buttons, on the other hand, can have only one button selected. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 75/83

76 Outros componentes Checkbox Radio Button Check boxes are similar to radio buttons but their selection model is different, by convention. Any number of check boxes in a group none, some, or all can be selected. A group of radio buttons, on the other hand, can have only one button selected. Em geral não é preciso registrar listener para esses componentes. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 76/83

77 Outros Componentes JTable JTree Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 77/83

78 Diálogos Janeas que abrem separadas da interface Enquanto a janela não fecha, a interface fica travada Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 78/83

79 File chooser Dialogo específico para se escolher um arquivo Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 79/83

80 Look and feel É possível alterar a aparência dos componentes da GUI Para isso a API Java possui alguns Look and Feel que determinam a aparência É preciso saber quais estão instalados Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 80/83

81 UIManager UIManager.LookAndFeelInfo[] looks = UIManager.getInstalledLookAndFeels(); for (int i = 0; i < looks.length; i++){ System.out.println(looks[i].getClassName()); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 81/83

82 UIManager UIManager.LookAndFeelInfo[] looks = UIManager.getInstalledLookAndFeels(); for (int i = 0; i < looks.length; i++){ System.out.println(looks[i].getClassName()); UIManager.setLookAndFeel(looks[k].getClassName()); Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 82/83

83 Look & feel exemplos javax.swing.plaf.metal.metallookandfeel javax.swing.plaf.nimbus.nimbuslookandfeel com.sun.java.swing.plaf.motif.motiflookandfeel com.sun.java.swing.plaf.gtk.gtklookandfeel Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 83/83

Programação Java. Construção de Interface gráfica. Processo Básico: OO + Eventos. Exemplo

Programação Java. Construção de Interface gráfica. Processo Básico: OO + Eventos. Exemplo Programação Java Construção de Interface gráfica Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Processo Básico: OO + Eventos Instanciar os componentes de interface por exemplo,

Leia mais

Agenda. JFC (Java FoundaNon Classes) Interfaces Gráficas: layout manager JFC. Componentes do Swing. Pluggable Look and Feel

Agenda. JFC (Java FoundaNon Classes) Interfaces Gráficas: layout manager JFC. Componentes do Swing. Pluggable Look and Feel Agenda Interfaces Gráficas: layout manager joao@ecomp.uefs.br JFC (Java FoundaNon Classes) Swing componentes Gerênciamento de Layout BoderLayout, FlowLayout,... Departamento de Ciências Exatas Universidade

Leia mais

Aula 11: Interfaces gráficas (1/2): elementos de interface Swing

Aula 11: Interfaces gráficas (1/2): elementos de interface Swing Aula 11: Interfaces gráficas (1/2): elementos de interface Swing Motivação como fazer programas com interface gráfica em Java? solução: uso de pacotes (listados na API) AWT (java.awt.*) Swing (javax.swing.*)

Leia mais

Criando interfaces com o usuário. Continuação

Criando interfaces com o usuário. Continuação Criando interfaces com o usuário Continuação A diferença básica entre um objeto Window e um objeto JFrame é que o JFrame representa a janela principal de uma aplicação e o Window apenas uma janela a mais.

Leia mais

Gerenciamento de Layout

Gerenciamento de Layout Gerenciamento de Layout Gerenciamento de layout consiste no processo de determinar o tamanho e a posição dos componentes. Ele pode ser feito usando-se posicionamento absoluto, como fazíamos no VC++, Delphi

Leia mais

Processo Básico: OO + Eventos. Java First-Tier: Aplicações. Construção de Interface gráfica. Exemplo. Exemplo. Exemplo. Hierarquia de Composição

Processo Básico: OO + Eventos. Java First-Tier: Aplicações. Construção de Interface gráfica. Exemplo. Exemplo. Exemplo. Hierarquia de Composição Java First-Tier: Aplicações Construção de Interface gráfica Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Processo Básico: OO + Eventos Instanciar os componentes de interface por

Leia mais

Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico

Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico Prof. Esp. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java/aulajava07a09.pptx Existe grande quantidade de funcionalidades

Leia mais

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em: Aulas 16, 17, e 18

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em:  Aulas 16, 17, e 18 Elaborando Interfaces Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 16, 17, e 18 1 Todos os componentes JLabel JTextField JButton Além do próprio JFrame2 Todos os

Leia mais

Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos

Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos 1. Para a construção de uma aplicação gráfica se faz necessário conceber a interface de aplicação, identificando-se

Leia mais

Programação II. Cassio Diego

Programação II. Cassio Diego Programação II Cassio Diego 1 Aula de hoje UNIDADE 1 1. Criação de interfaces gráficas usando as JFC/Swing 1.1. Introdução (revisão de orientação a objetos) 1.2. Hierarquia de classes 1.3. Modelos de desenvolvimento

Leia mais

JMENU, JDESKTOPPANE E JINTERNALFRAME

JMENU, JDESKTOPPANE E JINTERNALFRAME 1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA JMENU, JDESKTOPPANE E JINTERNALFRAME Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br Antes de começar!

Leia mais

Elaborando as Interfaces Aulas 31, 32 e 33

Elaborando as Interfaces Aulas 31, 32 e 33 Elaborando as Interfaces Aulas 31, 32 e 33 JList e JComboBox Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 31, 32 e 33. 1 ATIVIDADE DA SEMANA PASSADA ELABORE UMA

Leia mais

Layout. Programação Orientada a Objetos Java. Prof. Geraldo Braz Junior. Baseado em material original de João Carlos Pinheiro CEFET/MA

Layout. Programação Orientada a Objetos Java. Prof. Geraldo Braz Junior. Baseado em material original de João Carlos Pinheiro CEFET/MA Layout Programação Orientada a Objetos Java Prof. Geraldo Braz Junior Baseado em material original de João Carlos Pinheiro CEFET/MA Objetivos Apresentar os gerenciadores de layout: FlowLayout BorderLayout

Leia mais

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Nona aula

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Nona aula Programação Orientada a Objetos II Java Nona aula 1 Programação Orientada a Objeto II Interface Gráfica AWT E SWING Criação de interfaces gráficas básicas Exercícios 2 Interface gráfica em Java As aplicações

Leia mais

Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1.

Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1. 9ª LISTA DE EXERCÍCIOS INTERFACES GRÁFICAS DE USUÁRIO Disciplina: PC-II Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1. Figura 1.1: Primeira

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 1- Interfaces Gráficas com Swing

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 1- Interfaces Gráficas com Swing Aula 1- Interfaces Gráficas com Swing Conteúdo Programático desta aula Explorar o pacote Swing para desenvolver Interfaces em Java Utilização de Interfaces gráficas para interagir com objetos previamente

Leia mais

Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27.

Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27. Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27. Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 25, 26 e 27. 1 Na aula da semana passada ficaram para

Leia mais

Gerenciadores de Layout

Gerenciadores de Layout Gerenciadores de Layout Mário Antonio Meireles Teixeira DEINF UFMA Baseado em material original de João Carlos Pinheiro CEFET/MA 1 Objetivos Apresentar os gerenciadores de layout: FlowLayout BorderLayout

Leia mais

Programação Gráfica em Java Alguns Componentes javax.swing

Programação Gráfica em Java Alguns Componentes javax.swing Programação Gráfica em Java Alguns Componentes javax.swing Objetivo: Ao final da aula o aluno deverá ser capaz de empregar alguns componentes visuais do pacote javax.swing para produzir interfaces gráficas.

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula de Revisão para AV1

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula de Revisão para AV1 Aula de Revisão para AV1 Conteúdo Programático desta aula Rever os principais conceitos apresentados Resolução de Exercícios para a prova Quantas bibliotecas de GUI existem em Java: a) Uma: Swing b) Duas:

Leia mais

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em: Aulas 16, 17, e 18

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em:   Aulas 16, 17, e 18 Elaborando Interfaces Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 16, 17, e 18 1 Pensando nesta tela 2 As Etiquetas ou rótulos JLabel 3 As caixas de textos JTextField

Leia mais

. Uma instância da classe JTextField gera uma instância da classe ActionEvent quando o objecto está activo e o utilizador pressiona a tecla ENTER.

. Uma instância da classe JTextField gera uma instância da classe ActionEvent quando o objecto está activo e o utilizador pressiona a tecla ENTER. Interfaces Gráficas e Eventos - 18 A classe JTextField. Um campo de texto, permite ao utilizador introduzir uma única linha de texto. Uma instância da classe JTextField gera uma instância da classe ActionEvent

Leia mais

Componentes GUI A aparência e maneira como um usuário pode interagir com componentes AWT diferem de acordo com a plataforma. Componentes Swing permite

Componentes GUI A aparência e maneira como um usuário pode interagir com componentes AWT diferem de acordo com a plataforma. Componentes Swing permite Componentes GUI GUI Grafical User Interface São construídas a partir de componentes GUI chamados de controles ou widgets (windows gadgets engenhocas de janela). Ex: JOptionPane fornece caixas de diálogos

Leia mais

JTextArea JMenuBar JTable JDesktopPane e JInternalFrame

JTextArea JMenuBar JTable JDesktopPane e JInternalFrame Interface Gráfica Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Agenda JTextArea JMenuBar JTable JDesktopPane e JInternalFrame Componente JTextArea Fornece uma área para manipulação

Leia mais

8. Interfaces Gráficas de Usuário

8. Interfaces Gráficas de Usuário Vamos discutir como construir aplicações com interface gráfica de usuário (conhecida como GUI - Graphical User Interface). Numa interface gráfica existem botões, caixas de texto, painéis, barras de rolagem,

Leia mais

Componente JOptionPane Layout Null Tratamento de Eventos. Action Listener

Componente JOptionPane Layout Null Tratamento de Eventos. Action Listener Interface Gráfica Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Agenda Componente JOptionPane Layout Null Tratamento de Eventos Action Listener Componente JOptionPane javax.swing.joptionpane

Leia mais

Programação Orientada a Objetos com Java. Prof. Júlio Machado

Programação Orientada a Objetos com Java. Prof. Júlio Machado Programação Orientada a Objetos com Java Prof. Júlio Machado julio.machado@pucrs.br INTERFACE GRÁFICA Interface Gráfica Os elementos básicos necessários para criar um GUI (Graphical User Interface - Interface

Leia mais

Interface Gráfica com o Usuário (GUI) Profa. Isabel Harb Manssour (Material adaptado das aulas da Profa. Luciana Nedel e do Prof.

Interface Gráfica com o Usuário (GUI) Profa. Isabel Harb Manssour (Material adaptado das aulas da Profa. Luciana Nedel e do Prof. Interface Gráfica com o Usuário (GUI) Profa. Isabel Harb Manssour (Material adaptado das aulas da Profa. Luciana Nedel e do Prof. Julio Machado) GUI (Graphical User Interface) Containers e Componentes

Leia mais

Java Foundation Classes Coleção de pacotes para criação de aplicações completas Desktop Interfaces gráficas (GUIs- Graphical User Interface)

Java Foundation Classes Coleção de pacotes para criação de aplicações completas Desktop Interfaces gráficas (GUIs- Graphical User Interface) Interface Gráfica Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos JFC Java Foundation Classes Coleção de pacotes para criação de aplicações completas Desktop Interfaces gráficas

Leia mais

Java Standard Edition (JSE)

Java Standard Edition (JSE) Java Standard Edition (JSE) Capítulo 09. Swing básico Esp. Márcio Palheta MSN: marcio.palheta@hotmail.com 1 Novos recursos a aprender Interfaces gráficas; Portabilidade; O pacote do Swing; Primeiro projeto

Leia mais

Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1)

Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1) Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1) Overriding x Overload Métodos de diferentes classes que possuem uma relação de herança. Métodos possuem mesmo nome, mesma assinatura

Leia mais

MÓDULO 4 SWING Parte 3

MÓDULO 4 SWING Parte 3 Aplicações de Linguagem de Programação Orientada a Objetos 2ºsem/2011 (Professores: Tiago e Daniele) // Exemplo11 Ação do Mouse import javax.swing.*; import java.awt.*; import java.awt.event.actionevent;

Leia mais

Aplicação Linguagem de Programação Orientada a Objeto

Aplicação Linguagem de Programação Orientada a Objeto Aplicação Linguagem de Programação Orientada a Objeto ALPOO 02 - Swing Prof. Msc Wanderley Gonçalves Freitas Agenda Telas de mensagem - apresentar as principais telas de mensagens Containers o conceito

Leia mais

Aplicações de Linguagem de Programação Orientada a Objeto

Aplicações de Linguagem de Programação Orientada a Objeto Aplicações de Linguagem de Programação Orientada a Objeto Eventos Professora Sheila Cáceres Programação Orientada a Eventos No modelo imperativo tradicional, o programador determina a ordem de entrada

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Graphical user Interfaces Objetivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar as classes JFrame, JButton, JLabel, ImageIcon, JTextField,

Leia mais

Interfaces Gráficas com Swing. Professor Leonardo Larback

Interfaces Gráficas com Swing. Professor Leonardo Larback Interfaces Gráficas com Swing Professor Leonardo Larback SWING Swing é um widget toolkit para uso em Java. Surgiu como sucessor do Abstract Window Toolkit (AWT) à partir do java 1.2. Como uma das principais

Leia mais

Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30.

Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30. Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30. Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 28, 29 e 30. 1 Exercício Crie uma tela com os menus Menu

Leia mais

Elaborando as Interfaces Aulas 43, 44 e 45

Elaborando as Interfaces Aulas 43, 44 e 45 Elaborando as Interfaces Aulas 43, 44 e 45 RESOLUÇÃO DOS EXERCÍCIOS, MÉTODOS E JPROGRESSBAR Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 43, 44 E 45. 1 ATIVIDADE

Leia mais

JAVA. Gerenciadores de Layout. Tiago Alves de Oliveira

JAVA. Gerenciadores de Layout. Tiago Alves de Oliveira JAVA Gerenciadores de Layout Tiago Alves de Oliveira 1 Introdução Layout para impor algum tipo de forma em uma interface projetada com o AWT, deve-se usar um conjunto de classes chamadas gerenciadores

Leia mais

Introdução à Programação Gráfica em Java

Introdução à Programação Gráfica em Java Introdução à Programação Gráfica em Java U N I V E R S I D A D E T E C N O L Ó G I C A F E D E R A L D O P A R A N Á D E P A R T A M E N T O A C A D Ê M I C O D E E L E T R Ô N I C A P R O F. V I T O R

Leia mais

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: Guilherme Faria Quental Identificação da Turma: Análise e Desenvolvimento de Sistemas

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Graphical user Interfaces Objetivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar classes do package javax.swing - Usar um modelo de programação

Leia mais

Aula Prática Criando Views e Controles

Aula Prática Criando Views e Controles Aula Prática Criando Views e Controles Criando a interface utilizando Swing Paulo Ricardo Lisboa de Almeida 1 Criando uma UI Simples Vamos criar uma view simples no braço utilizando swing Existem opções

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos Componentes: JLabel, JTextFielde JButton Container / Layout Gil Eduardo de Andrade Componentes Gráficos: Container A classe Container (import java.awt.container) A ideia decontainer,

Leia mais

Java - Swing. Raphaela Galhardo raphaela@j2eebrasil.com.br http://www.j2eebrasil.com.br http://javarn.dev.java.net

Java - Swing. Raphaela Galhardo raphaela@j2eebrasil.com.br http://www.j2eebrasil.com.br http://javarn.dev.java.net Java - Swing Raphaela Galhardo raphaela@j2eebrasil.com.br http://www.j2eebrasil.com.br http://javarn.dev.java.net Conteúdo Interface com Usuário; Eventos; Swing. Introdução Interface com Usuário Grande

Leia mais

Aula 15 Interface Gáfica. Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes

Aula 15 Interface Gáfica. Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes Aula 15 Interface Gáfica Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Interface gráfica em Java: Swing. Java Foundation Classes

Leia mais

JFC/Swing. LPGII - Java Interface Gráfica JFC/Swing. Introdução JFC / Swing. Introdução JFC / Swing

JFC/Swing. LPGII - Java Interface Gráfica JFC/Swing. Introdução JFC / Swing. Introdução JFC / Swing JFC/Swing LPGII - Java Interface Gráfica JFC/Swing Roberto Vedoato vedoato@joinville.udesc.br Introdução Hierarquia Organização das Aplicações Containers Swing Combinação de Layouts Look-and-Feel Dicas

Leia mais

Gestores de Layout. Arranjo de elementos numa Janela

Gestores de Layout. Arranjo de elementos numa Janela Programação Na Web Gestores de Layout Arranjo de elementos numa Janela 1 António Gonçalves Agenda Como os gestores de layout simplificam o desenho do interface Standard layout managers FlowLayout, BorderLayout,

Leia mais

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em: Aulas 19, 20 e 21

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em:  Aulas 19, 20 e 21 Elaborando Interfaces Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 19, 20 e 21 1 PARAMOS AQUI NA AULA PASSADA Elabore a tela abaixo: (Valor 2,0 pontos) 2 Algumas

Leia mais

Aula 2 Eventos do Mouse by Pearson Education do Brasil

Aula 2 Eventos do Mouse by Pearson Education do Brasil 1 11 Aula 2 Eventos do Mouse 11.13 Tratamento de evento de mouse 2 Eventos de mouse: Cria um objeto MouseEvent. Tratado por MouseListeners e MouseMotionListeners. MouseInputListener combina as duas interfaces.

Leia mais

COM220 Aula 17: Interface Gráfica Containers Swing

COM220 Aula 17: Interface Gráfica Containers Swing COM220 Aula 17: Interface Gráfica Containers Swing Prof. Laércio Baldochi Containers Swing Janelas JFrame Painéis JPanel Applets JApplet Caixas de diálogo JDialog JOptionPane JFrame Componente principal

Leia mais

Interface Gráfica. Disciplina: Desenvolvimento de Sistemas. Professor: Thiago Silva Prates

Interface Gráfica. Disciplina: Desenvolvimento de Sistemas. Professor: Thiago Silva Prates Interface Gráfica Disciplina: Desenvolvimento de Sistemas Professor: Thiago Silva Prates Interface Gráfica Interface Gráfica com Usuário (do inglês, Graphical User Interface GUI) apresenta um mecanismo

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 2. Programação visual com a IDE Netbeans Projetos Tipos de projetos Desenvolvimento

Leia mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 11 Outros Painéis Intermediários Seleção do Look & Feel Gerenciadores

Leia mais

Programação Orientada a Objetos II

Programação Orientada a Objetos II Programação Orientada a Objetos II Interfaces Gráficas Componentes Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com www.bolinhabolinha.com Ementa Introdução ao Desenvolvimento de Interfaces Gráficas Herança

Leia mais

Aula 2 Even e to t s d o M ouse

Aula 2 Even e to t s d o M ouse Aula 2 Eventos do Mouse Sumário Considerações iniciais Elementos de uma aplicação Principais tipos de eventos em Java: (WindowEvent, MouseEvent, ActionEvent, KeyEvent) Capturando os eventos: Definindo

Leia mais

MANIPULAÇÃO DE EVENTOS

MANIPULAÇÃO DE EVENTOS MANIPULAÇÃO DE EVENTOS Ao término desse capítulo você terá aprendido: Tipos de eventos; Manipulação de eventos de componentes; Manipulação de eventos do mouse; Manipulação de eventos do teclado; Interfaces

Leia mais

Programação Orientada a Objetos em Java. GUI Graphical User Interface

Programação Orientada a Objetos em Java. GUI Graphical User Interface Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java GUI Graphical User Interface Professor: César Melo Slides baseados

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof.

Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof. Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof. Renato Pimentel Laboratório 10 Interface gráfica Atividade individual. 1 Introdução

Leia mais

Gerenciadores de Layouts

Gerenciadores de Layouts Gerenciadores de Layouts João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão: 1.1 Última Atualização 04 / 2005 1 Objetivos Apresentar os gerenciadores de layouts FlowLayout BorderLayout GridLayout BoxLayout

Leia mais

Aula 12 POO 1 Interface Gráfica no Java. Profa. Elaine Faria UFU

Aula 12 POO 1 Interface Gráfica no Java. Profa. Elaine Faria UFU Aula 12 POO 1 Interface Gráfica no Java Profa. Elaine Faria UFU - 2019 Sobre o Material Agradecimentos Aos professores José Gustavo e Fabiano, por gentilmente terem cedido seus materiais. Os slides consistem

Leia mais

LINGUAGEM DE PROGAMAÇÃO II Criando uma Classe

LINGUAGEM DE PROGAMAÇÃO II Criando uma Classe Turma 2112 LINGUAGEM DE PROGAMAÇÃO II Criando uma Classe Data 29-05-17 Para criar um projeto novo utilize a URL http://mz.pro.br/lpii/lpii_160215.pdf. Vamos construir um programa que apresente a tela abaixo:

Leia mais

Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Programando GUIs

Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Programando GUIs Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Programando GUIs Exercício 1: A Figura 1 foi gerada pelo programa mostrado na Listagem 1. Rode o programa para confirmar esta

Leia mais

Arquivos. Prof. Leonardo Barreto Campos 1

Arquivos. Prof. Leonardo Barreto Campos 1 Arquivos Prof. Leonardo Barreto Campos 1 Sumário Introdução; A Classe File; Criando um arquivo de texto de acesso seqüencial; Exemplos de Interface; Lendo dados a partir de um arquivo de texto de acesso

Leia mais

Prof. Fernando V. Paulovich 25 de julho de SCC Programação Orientada a Objetos

Prof. Fernando V. Paulovich   25 de julho de SCC Programação Orientada a Objetos SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade de São

Leia mais

Interface Gráfica. GUI (Graphic User Interface) AWT e Swing Containers e componentes Layouts. Linguagem Java - Prof. Luciana Porcher Nedel 1

Interface Gráfica. GUI (Graphic User Interface) AWT e Swing Containers e componentes Layouts. Linguagem Java - Prof. Luciana Porcher Nedel 1 Interface Gráfica GUI (Graphic User Interface) AWT e Swing Containers e componentes Layouts Linguagem Java - Prof. Luciana Porcher Nedel 1 Graphical User Interface (GUI) Existe uma infinidade de funcionalidades

Leia mais

Vector Java. Empregado.java

Vector Java. Empregado.java Vector Java Empregado.java /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools Templates * and open the template in the editor.

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 4- Tratamento de Eventos em Interfaces Gráficas

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 4- Tratamento de Eventos em Interfaces Gráficas Aula 4- Tratamento de Eventos em Interfaces Gráficas Conteúdo Programático desta aula Manipular de Fontes, cursores, bordas, Compreender os modelos de tratamentos de eventos Utilizar os tratamentos de

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos Componentes: JCheckBoxe JRadioButton JPanel / ButtonGroup/ ItemListener Gil Eduardo de Andrade Componentes Gráficos: JCheckBox A classe JCheckBox (import java.swing.jcheckbox) A classe

Leia mais

Técnicas de Programação II

Técnicas de Programação II Técnicas de Programação II Aula 03 GUI e Swing Edirlei Soares de Lima GUI Graphical User Interface A API Java fornece diversas classes destinadas a criação de interfaces gráficas.

Leia mais

A classe JTextField

A classe JTextField 8.1.4. A classe JTextField É uma caixa para digitação do usuário que permite a inclusão de um texto de apenas uma única linha. Principais métodos setbounds(int x, int y, int Width, int Height) define as

Leia mais

Java Deployment Course

Java Deployment Course Java Deployment Course Atividade Prática Programação Visual com JBuilder Jorge H. C. Fernandes Recife, 12 de Maio de 1999 Tópicos Modelo da Aplicação Interface da Aplicação Conexão entre Modelo e Interface

Leia mais

Model-View-Controller (MVC)

Model-View-Controller (MVC) Model-View-Controller (MVC) por Rodrigo Rebou ças de Almeida Objetivo Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control) A idéia é permitir que

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Alexandre César Muniz de Oliveira Entrada e Saída Parte IV Entrada e Saída Módulo de Interface com o usuário Dividir trabalho Separar processamento de E/S Entrada e Saída

Leia mais

LPII Programando uma Cálculadora Simples Módulo III

LPII Programando uma Cálculadora Simples Módulo III Abra o Eclipse e crie um projeto de nome calculadorasimples. Em seguida crie um frame de nome calculadora na opção New >> Other que apresenta a tela: Inclua os componentes button e TextField, conforme

Leia mais

Interface Gráfica - Swing

Interface Gráfica - Swing Interface Gráfica - Swing 1 'Botão de opção' (JRadioButton) p O componente 'Botão de opção', também conhecido como RadioButton, é utilizado para você selecionar uma e somente uma opção entre várias oferecidas

Leia mais

Interfaces Gráficas: Interações Complexas

Interfaces Gráficas: Interações Complexas Interfaces Gráficas: 21 Interações Complexas 21.2 Gerenciando leiautes 21.2.6 GridBagLayout Este gerente de leiaute dispõe os componentes sob seu controle em um reticulado, permitindo a especificação da

Leia mais

Interface Gráfica. Prof. Marcelo Cohen. (material da Profa. Luciana Nedel) Graphical User Interface (GUI)

Interface Gráfica. Prof. Marcelo Cohen. (material da Profa. Luciana Nedel) Graphical User Interface (GUI) Interface Gráfica Prof. Marcelo Cohen (material da Profa. Luciana Nedel) 1 Graphical User Interface (GUI) Existe uma infinidade de funcionalidades disponíveis nas bibliotecas de classes Java, destinadas

Leia mais

(INFORMAÇÕES PARA LABORATÓRIOS VIRTUAIS) Nome do laboratório: Laboratório de Programação (INFORMAÇÕES PARA FERRAMENTA)

(INFORMAÇÕES PARA LABORATÓRIOS VIRTUAIS) Nome do laboratório: Laboratório de Programação (INFORMAÇÕES PARA FERRAMENTA) (INFORMAÇÕES PARA LABORATÓRIOS VIRTUAIS) Nome do laboratório: Laboratório de Programação (INFORMAÇÕES PARA FERRAMENTA) Ferramenta 1 -NetBeans 8.1 GUI Elaborado por: Osmar de Oliveira Braz Junior Descrição

Leia mais

HABILITANDO A IDE DO ECLIPSE

HABILITANDO A IDE DO ECLIPSE HABILITANDO A IDE DO ECLIPSE Até agora configuramos todos os atributos dos objetos inseridos em um frame. Vamos agora habilitar a IDE do Eclipse. Siga os passos abaixo: 1. File >>New >> Java Project 2.

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 3- Desenvolvendo Interfaces Mais Ricas

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 3- Desenvolvendo Interfaces Mais Ricas Aula 3- Desenvolvendo Interfaces Mais Ricas Conteúdo Programático desta aula Manipular de Fontes, cursores, bordas, cores de fontes e cores de fundos Gerenciar interfaces com menus e caixas de diálogos

Leia mais

Swing. Page 1. Swing. Prof. Anderson Augustinho Uniandrade

Swing. Page 1. Swing. Prof. Anderson Augustinho Uniandrade Page 1 API A API renderiza/desenha por conta própria todos os componentes visuais, ao invés de delegar essa tarefa ao sistema operacional, como a maioria das outras APIs de interface gráfica trabalham.

Leia mais

Tiago Alves de Oliveira. Tiago Alves de Oliveira

Tiago Alves de Oliveira. Tiago Alves de Oliveira Tiago Alves de Oliveira 1 Tiago Alves de Oliveira Os containers que encontramos no Swing são os objetos que irão hospedar e organizar os outros componentes, como botões, edits, labels, etc... Swing possui

Leia mais

Interface Gráfica. Prof. Marcelo Cohen

Interface Gráfica. Prof. Marcelo Cohen Interface Gráfica Prof. Marcelo Cohen 1. Visão geral da interface gráfica em Java A API (Application Programming Interface) para utilizar recursos gráficos é separada em dois componentes principais: AWT

Leia mais

Programação III. Interface Gráfica - Swing. Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br. Interface Gráfica - Swing

Programação III. Interface Gráfica - Swing. Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br. Interface Gráfica - Swing Programação III Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br Deitel Capítulo 11 : Imagens gráficas e Java 2D Capítulo 12 : Componentes Básicos Capítulo 13 : Componentes Avançados GUI

Leia mais

Desenvolvimento de Aplicações Desktop

Desenvolvimento de Aplicações Desktop Desenvolvimento de Aplicações Desktop Pacotes: Swing, AWT Janelas de diálogo: JOptionPane Formulários: JFrame Etiquetas: JLabel Caixas de texto simples: JTextField Botões: JButton Menus: JMenuXXX Tratamento

Leia mais

JFrame. JLabel : Utilizado como rótulo para exibição de texto e ícones. Interface Gráfica de JAVA - Graphical User Interface (GUI)

JFrame. JLabel : Utilizado como rótulo para exibição de texto e ícones. Interface Gráfica de JAVA - Graphical User Interface (GUI) Interface Gráfica de JAVA - Graphical User Interface (GUI) Para que o usuário possa interagir com a aplicação é necessário que haja uma interface para que este acione as funcionalidades do programa. JAVA

Leia mais

package br.com.cadastro.visao;

package br.com.cadastro.visao; package br.com.cadastro.visao; import java.awt.eventqueue; import java.awt.event.actionlistener; import javax.swing.jframe; import javax.swing.jpanel; import javax.swing.border.emptyborder; import br.com.cadastro.modelo.cliente;

Leia mais

MODEL-VIEW-CONTROLER. Prof. Fellipe Aleixo

MODEL-VIEW-CONTROLER. Prof. Fellipe Aleixo MODEL-VIEW-CONTROLER Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) O Que é MVC? Modelo de arquitetura de software Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo

Leia mais

Programação Orientada a Objetos II

Programação Orientada a Objetos II Programação Orientada a Objetos II Prof. Walter Gima walter.gima@anhanguera.com 1 Plano de Ensino e Aprendizagem 2 Interface Gráfica para desktop com Java - SWING 3 Agenda Interface Gráfica utilizando

Leia mais

Interface Gráficas Parte I. Bruno Crestani Calegaro

Interface Gráficas Parte I. Bruno Crestani Calegaro Interface Gráficas Parte I Bruno Crestani Calegaro Conteúdo da Aula GUI, Graphical User Interface, é nada mais que a tela que um programa apresenta para um usuário Até o agora nossos programas foram desenvolvidos

Leia mais

Interfaces POO. Prof. Marcio Delamaro

Interfaces POO. Prof. Marcio Delamaro Interfaces POO Prof. Marcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/41 O que é interface É um template de classe Outras classes podem seguir esse template Chamamos isso

Leia mais

Java Swing: Netbeans

Java Swing: Netbeans Java Swing: Netbeans Swing Atualmente, o Java suporta, oficialmente, dois tipos de bibliotecas gráficas:awt e Swing. A AWT foi a primeira API para interfaces gráficas a surgir no Java e foi, mais tarde,

Leia mais

Principais Classes Swing AWT

Principais Classes Swing AWT Principais Classes Swing AWT As classes e interfaces localizadas nos pacotes java.awt e javax.swing são recursos para o desenvolvimento de GUIs (Graphic User Interface Interface Gráfica do Usuário). Uma

Leia mais

Linguagem de programação 2 GUI

Linguagem de programação 2 GUI Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação 2 GUI Professor: Saulo Henrique Cabral Silva GUI - Graphical User Interface 2 Interfaces gráficas Possibilita usar computadores

Leia mais

Criação de Aplicações GUI. Java JFC / Swing

Criação de Aplicações GUI. Java JFC / Swing Criação de Aplicações GUI Java JFC / Swing JFC Java Foundation Classes Inclui um conjunto de funcionalidades para desenvolver graphical user interfaces (GUIs) e adicionar funcionalidades gráficas e interativas

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Professor: Diego Oliveira Conteúdo 19: Interface Gráfica 2 Componentes Sabemos que uma janela do Java (JFrame) pode possuir diversos componentes Cada um desses componentes

Leia mais

Exemplo Threads com Swing:

Exemplo Threads com Swing: Exemplo Threads com Swing: Fazer uma aplicação Java com 2 JLabel, com um ponto final, em formatação Negrito, tamanho 70 e um JButton. A aplicação deve conter 2 Threads e um método. O método deve fazer

Leia mais

Java First-Tier: Aplicações. Abstract Window Toolkit (AWT) Construção de Interfaces com Swing (I) Swing: Características

Java First-Tier: Aplicações. Abstract Window Toolkit (AWT) Construção de Interfaces com Swing (I) Swing: Características Java First-Tier: Aplicações Construção de Interfaces com Swing (I) Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Abstract Window Toolkit (AWT) Peer-based Delega ao toolkit nativo

Leia mais