Top-Level Containers. Interface com o Usuário. de classes empregadas para implementar a interface com o usuário.

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

Download "Top-Level Containers. Interface com o Usuário. de classes empregadas para implementar a interface com o usuário."

Transcrição

1 JFC e Swing Interface com o Usuário JFC e Swing n JFC Java Foundation Classconjunto de classes empregadas para implementar a interface com o usuário. n A API Swing foi incluída na versão 2 da plataforma Java,Java Paltaform Standard Edition (J2SETM), desda versão inicial (1.2). Top-Level Containers 1

2 General-Purpose Containers Special-Purpose Containers Controles Básicos 2

3 Informações não Editáveis Displays Interativos AloMundoSwing.java import javax.swing.*; public class AloMundoSwing { /** * Cria a GUI e a apresenta. */ private static void createandshowgui() { //Estabelece a decoração e look and feel. JFrame.setDefaultLookAndFeelDecorated(true); //Cria a janela com título. JFrame frame = new JFrame( AloMundoSwing"); frame.setdefaultcloseoperation(jframe.exit_on_close); //Adiciona o Label Alô Mundo!!!". JLabel label = new JLabel( Alô Mundo!!!"); frame.getcontentpane().add(label); 3

4 AloMundoSwing.java } //Apresenta a Janela. frame.pack(); frame.setvisible(true); } public static void main(string[] args) { //Schedule a job for the event-dispatching thread: //creating and showing this application's GUI. javax.swing.swingutilities.invokelater(new Runnable(){ public void run() { createandshowgui(); } }); } Importando Pacotes n A primeira linha importa o pacote swing: import javax.swing.*; n A maioria dos programas Swing também necessitam importar 2 pacotes AWT: import java.awt.*; import java.awt.event.*; Exemplo 1 n AloMundowing.java Neste exemplo o container é do tipo JFrame. Para criar e apresentar a janela é empregado o código abaixo: JFrame.setDefaultLookAndFeelDecorated(true); JFrame frame = new JFrame( AloMundoSwing");... frame.pack(); frame.setvisible(true); 4

5 JLabel n Exceto os top-level containers, tais como JFrame, todos os componentes Swing são derivados de JComponent. n JLabel é um componente Swing que apresenta um texto. JLabel label = new JLabel( Alô Mundo!!!"); frame.getcontentpane().add(label); Adicionando componentes n Note que o componente JLabel não foi adicionado ao frame. n Todo top-level container tem um content pane que contem, direta ou indiretamente, todos os componentes visíveis (exceto os menus e as decorações das janelas). Container n Todo programa swing deve ter pelo menos um top-level container. n Esta janela principal é geralmente do tipo JFrame, JDialog, ou (para applets) JApplet. JFrame implementa uma janela principal JDialog implementa uma janela secundária JApplet implementa uma área de apresentação numa janela de um browser 5

6 Exemplo de Container Content Panel n Todo top-level container tem um panel onde são inseridos os controles. n Para adicionarmos um controle ao panel no exemplo 1 fizemos: frame.getcontentpane().add(label); Estrutura de Camadas 6

7 JRootPane n Em geral, não é criado diretamente um JRootPane. n É criado quando é instânciado um JInternalFrame ou um dos conainers do Swing, tais como JApplet, JDialog ou JFrame. JRootPane n Glass Pane Não é visível por default. Funciona como um vidro sobre todas as outras partes. n Layered Pane Posiciona os componentes, o content pane e o menu bar. n Content Pane É o container dos componentes visíveis do root pane. n Menu Bar (opcional) Onde fica a barra de menu. Fechando a janela n Para fechar o programa o botão fechar é clicado e o código abaixo faz o tratamento necessário para fechar o programa: frame.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE); 7

8 Colocando tudo para rodar javax.swing.swingutilities.invokelater( new Runnable() { public void run() { /* create and show the GUI */ createandshowgui(); } }); Exemplo 2 n LookAndFeel.java Este exemplo ilustra: n Look and Feel n Instanciando Botões e Labels n Adicionando componentes n Colocando Bordas n Tratando Eventos JFrame n Uma instância da classe JFrame é uma janela típica com borda, título e ícones para fechar, maximizar e minimizar. Programa com GUI normalmente usam uma instância de JFrame. n Para fazer uma janela que apareça dentro de outra usa-se a classe JInternalFrame. 8

9 JFrame //1. Opcional: Especifica o Look and Feel. JFrame.setDefaultLookAndFeelDecorated(true); //2. Cria o frame. JFrame frame = new JFrame("FrameDemo"); //3. Opcional: O que acontece ao fechar frame.setdefaultcloseoperation(jframe.exit_on_close); //4. Cria os componentes e os coloca frame.getcontentpane().add(emptylabel, BorderLayout.CENTER); //5. Arruma o frame. frame.pack(); //6. Apresenta frame.setvisible(true); Tamanho e Posição n void pack() - Cria a janela num tamanho que possa conter todos os controles. n void setsize(...),dimension getsize() - Set ou get o tamanho da janela. n void setbounds(...),rectangle getbounds() - Set ou get o tamanho e posição da janela. n void setlocation(...), Point getlocation() - Set ou get a localização do canto superior esquerdo da janela. n void setlocationrelativeto(component) - Posição da janela centralizada sobre o componente especificado. Se o parâmetro for null é centralizada na tela. Framework.java 9

10 Look and Feel Java Look and Feel GTK+ Look and Feel Windows Look and Feel MacOS Look and Feel Look and Feel n Para configurar o comportamento foi usado o código: String lookandfeel = null;... lookandfeel = UIManager.getCrossPlatformLookAndFeelClassName();... try { UIManager.setLookAndFeel(lookAndFeel); } catch (Exception e) { }... // Create and show the GUI.. Look and Feel n Para o tratamento do evento ActionListener associado ao botão: button.addactionlistener( // cria a classe anônima new ActionListener(){ public void actionperformed(actionevent e) { numclicks++; label.settext(labelprefix + numclicks); initlookandfeel(); } }); 10

11 Look and Feel n Método initlookandfeel muda a aparência em função do número de cliks. private static void initlookandfeel(){ switch( numclicks % 4){ case 0: lookandfeel = "com.sun.java.swing.plaf.motif.motiflookandfeel"; break;... Labels n Através da classe JLabel, textos e imagens podem ser exibidos. n Se o componente é interativo e possui estados, deve ser empregada a classe JButton. n Ao ser utilizado código HTML como texto em um JLabel é possível: ter linhas múltiplas, fontes diferentes, várias cores, etc. Instanciando Labels n Abaixo apresentamos um código para instanciarmos um label:... // declarando as variáveis private static String labelprefix = "Number of button clicks: "; private int numclicks = 0;...// código de iniciação: final JLabel label = new JLabel(labelPrefix + "0 ");... label.setlabelfor(button);... // no tratamento de evento atualiza os clicks: label.settext(labelprefix + numclicks); 11

12 Botões n Swing utiliza a classe JButton para implementar botões. n JButton, assim como JLabels, pode apresentar tanto texto quanto imagens. n A letra sublinhada é uma atalho para o botão, sendo especificado pelo método setmnemonic. n Toda vez que um botão é clicado um evento ActionEvent é disparado. Instanciando Botões n Abaixo é apresentado um código para instanciar um botão: JButton button = new JButton( "I'm a Swing button!"); button.setmnemonic('i'); button.addactionlistener( /*...create an action listener...*/); Adicionando Componentes n Neste segundo exemplo os controles são agrupados em um painel (JPanel). Criamos o panel e estabelecemos o layout com uma única coluna: JPanel panel = new JPanel( new GridLayout(0,1)); Depois adicionamos os componentes: panel.add(button); panel.add(label); 12

13 Colocando Bordas n Este é o código que estabelece a borda: pane.setborder( BorderFactory.createEmptyBorder( 30, //top 30, //left 10, //bottom 30) //right ); Tratando Eventos n Toda vez que o usuário digita uma tecla ou clica o mouse um evento é gerado. n Um objeto pode ser notificado de um evento, para tal deve: Implementar a interface apropriada; e ser registrado como um event listener no event source apropriado. Tratando Eventos public class SwingApplication {... JButton button = new JButton("I'm a Swing button!"); button.addactionlistener( new ActionListener(){ public void actionperformed(actionevent e) { numclicks++; label.settext(labelprefix + numclicks); initlookandfeel(); } }); } 13

14 Tratando Eventos n Todo event handler necessita: Na declaração da classe event handler, a especificação que a classe implements uma interface listener ou extends uma classe que implementa uma interface listener. Registrar uma instância da classe event handler como um listener em um ou mais componentes. A classe event handler deve tem o código que implementa os métodos da interface listener. Tratando Eventos n Geralmente, para tratar o click do mouse deve ser implementada a interface ActionListener. Event Listners Some Events and Their Associated Event Listeners Act that Results in the Event User clicks a button, presses Enter while typing in a text field, or chooses a menu item User closes a frame (main window) User presses a mouse button while the cursor is over a component User moves the mouse over a component Component becomes visible Component gets the keyboard focus Table or list selection changes Any property in a component changes such as the text on a label Listener Type ActionListener WindowListener MouseListener MouseMotionListener ComponentListener FocusListener ListSelectionListener PropertyChangeListener 14

15 Exemplo 3 n CelsiusConverter.java Uso do JTextField Conversão JTextField n Este componente é um controle básico de texto que permite ao usuário entrar com um texto de uma linha. n Quando o usuário termina a edição (pressionando <Enter>) é lançado um evento. n Caso seja necessária mais de uma linha de edição deve ser usado o componente JTextArea. Instanciando JTextField n O código abaixo instancia um componente JTextField no exemplo 3: JTextField tempcelsius = null;... tempcelsius = new JTextField(5); n O parâmetro inteiro 5 no construtor define o número de colunas do campo. Este número é usado para calcular o comprimento do componente usado pelo layout manager. n Este número não limita quantos caracteres podem ser usados no componente. 15

16 Convertendo o valor n Para converter o valor digitado é criado um event hendler do tipo ActionListner para o click no botão ou para o <Enter> no JTextField. converttemp.addactionlistener(this); tempcelsius.addactionlistener(this);... public void actionperformed(actionevent event){ // Parse degrees Celsius as a double and // convert to Fahrenheit. int tempfahr = (int)((double.parsedouble(tempcelsius.gettext())) * ); fahrenheitlabel.settext(tempfahr + " Fahrenheit"); } JTextArea n A classe JTextArea permite serem apresentados textos com múltiplas linhas e, opcionalmente, o usuário editar o texto. n Se o texto a ser apresentado for contante e não for editado pelo usuário deve ser empregada a classe JLabel. textarea = new JTextArea(5, 20); JScrollPane scrollpane = new JScrollPane(textArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); textarea.seteditable seteditable(false); JTextArea n Sem a criação dos scroll pane, o JTextArea não irá permitir rolar o texto. A classe JScrollPane é empregada para isso, como no exmeplo apresentado. n Por padrão, JTextAreas são editáveis. O método seteditable(false) desbilita a edição. n Para adicionar texto ao objeto JTextArea empregase o método: private final static String newline = "\n";... textarea.append(text + newline); 16

17 JPasswordField n A classe JPasswordField é uma classe derivada de JTextField especializada para password. n O que for digitado, por razões de segurança, é substituído por um outro caracter tal como *, por exemplo. n O valor digitado é armazenado como um array de caracteres ao invés de uma String. passwordfield = new JPasswordField(10); passwordfield.setactioncommand(ok); passwordfield.addactionlistener(this);... char[] input = passwordfield.getpassword getpassword(); JPasswordField JButton n Um botão Swing pode apresentar tanto texto quanto imagens. n A letra sublinhada é um atalho e é especificada através do método setmnemonic(keyevent.vk_d). n Quando um botão está desabilitado o look and feel gera o aparência correspondente. n Geralmente a resposta ao click é implementada através do action listener. 17

18 Botão Default n O top-level container só pode ter um botão default (aquele que tem a aparência destacada e atende ao pressionar da tecla <Enter>). n Para definir o botão converttemp para default: converterframe.getrootpane(). setdefaultbutton(converttemp); Exemplo 4 n LunarPhases.java Layout Managers Compound Borders ComboBox Multiple Images Criando os Panels //Cria e apresenta os paineis phase selection e display. selectpanel = new JPanel(); displaypanel = new JPanel(); //Adiciona varios widgets aos sub panels. addwidgets(); //Cria o main panel que contem os dois sub panels. mainpanel = new JPanel(); mainpanel.setlayout(new BoxLayout(mainPanel, BoxLayout.PAGE_AXIS)); mainpanel.setborder(borderfactory.createemptyborder( 5,5,5,5)); //Adiciona os paineis select e display ao main panel. mainpanel.add(selectpanel); mainpanel.add(displaypanel); 18

19 Usando Layout Managers n A única hora que devemos nos preocupar com o layout manager é na instanciação do panel: JPanel pane = new JPanel( new BorderLayout()); n Ou por exemplo para o content panel: Container contentpane = frame.getcontentpane(); contentpane.setlayout(new FlowLayout()); Compound Borders n Uma compound border consiste de uma borda com título e uma borda vazia (para adicionar um espaço extra), como na figura abaixo: Compound Borders n O código para adicionar a compound border: // Add border around the select panel // selectpanel. setborder(borderfactory.createcompoundborder( BorderFactory.createTitledBorder( "Select Phase"), BorderFactory.createEmptyBorder(5,5,5,5)) ); 19

20 ComboBox n Uma combo box permite escolher uma opção de uma lista. n JComboBox pode permitir a edição ou não do texto. A forma default não permite a edição. n A combo box pode ser iniciada com um array de strings, no nosso exemplo fases da lua. n Também pode ser iniciado com um array de ícones ou com um vetor ou estrutura de dados. n O método setselectedindex especifica qual o valor incial a ser apresentado. ComboBox JComboBox phasechoices = null;... //Cria a combo box com as fases lunares. String[] phases = { "New", "Waxing Crescent", "First Quarter", "Waxing Gibbous", "Full", "Waning Gibbous", "Third Quarter", "Waning Crescent" }; phasechoices = new JComboBox(phases); phasechoices.setselectedindex( START_INDEX); Eventos com ComboBox n A combo box dispara um evento do tipo ActionListener quando o usuário seleciona um item. phasechoices.addactionlistener(this);... public void actionperformed(actionevent event) { if("comboboxchanged".equals(event.getactioncommand())){ //Update the icon to display the new phase phaseiconlabel.seticon( images[phasechoices.getselectedindex()]); } } 20

21 Multiple Images final static int NUM_IMAGES = 8; final static int START_INDEX = 3; ImageIcon[] images = new ImageIcon[NUM_IMAGES];... //Carrega as imagens. for (int i = 0; i < NUM_IMAGES; i++) { String imagename = "images/image" + i + ".jpg"; System.out.println("getting image: " + imagename); URL iconurl = LunarPhases.class.getResource(imageName); ImageIcon icon = new ImageIcon(iconURL); images[i] = icon; } Usando Layout Manager n O Java possui 7 layout managers: BorderLayout; BoxLayout; CardLayout; FlowLayout; GridBagLayout; GridLayout; e SpringLayout. Layouts 21

22 O que é Layout Manager? n O layout manager é um objeto que determina o tamanho e a posição dos componentes em um container. n Os componentes podem possuir atributos de tamanho e posição, mas a palavra final é do layout manager. n Cada objeto JPanel é inicializado com FlowLayout, a não ser que seja especificado outro. n O content pane usa o BorderLayout como default. Alterando o Layout Manager n Para alterar o layout manager de um JPanel, este pode ser especificado aundo o painel é instanciado: JPanel panel = new JPanel(new BorderLayout()); n Uma vez criado o container, o layout manager do content panel pode ser alterado através do método setlayout: Container contentpane = frame.getcontentpane(); contentpane.setlayout(new FlowLayout()); Adicionando Componentes n Há diferentes maneiras de se especificar como adicionar componentes ao JPanel, em função do tipo de layout manager. n Muitos layout managers simplificam isto adicionando os componentes baseados na ordem que são adicionados ao container. 22

23 Dimensões e Posição n Podem ser informadas as dimensões máximas e mínimas do controle, uma vez adicionado, através dos métodos: setminimumsize, setpreferredsize, e setmaximumsize. n Muitos layout managers não levam estes valores em conta, mas o BoxLayout e o SpringLayout sim. Alinhamento n Podem ser dadas informações sobre o alinhamento através dos métodos dos componentes: setalignmentx, e setalignmenty. n Ou sobrecarregando os métodos: getalignmentx, e getalignmenty. n Só o BoxLayout atende a estes métodos. Colocando Espaço n Três fatores influenciam no espaçamento dos componentes em um container: o layout manager; componentes invisíveis; ou bordas vazias. 23

24 Orientação n O atributo componentorientation permite que seja estabelecida a orientação de um componente, diferente da padrão esquerda para direita e cima para baixo. n Isto pode ser feito através dos métodos: setcomponentorientation; applycomponentorientation. n Os argumentos para estes métodos podem ser: ComponentOrientation.RIGHT_TO_LEFT, ou o método: ComponentOrientation.getOrientation getorientation(locale). Escolhendo o Layout Manager n Caso seja necessário apresentar um componente ocupando o máximo de espaço possível: se for um único componente use GridLayout ou BorderLayout. Caso contrário use BorderLayout ou GridBagLayout. Escolhendo o Layout Manager n Caso seja necessário apresentar alguns componentes em uma linha em tamanho natural. Use o JPanel para agrupar os compontes e o FlowLayout ou o BoxLayout. O SpringLayout também pode ser uma boa opção. 24

25 Escolhendo o Layout Manager n Caso seja necessário apresentar alguns componentes do mesmo tamanho em uma matriz: GridLayout. n Caso seja necessário apresentar alguns componentes em uma linha ou coluna, com espaçamento variável: BoxLayout. Escolhendo o Layout Manager n Caso seja necessário apresentar alguns componentes em colunas alinhadas, como em formulários onde os títulos dos campos estão numa coluna e os campos de edição estão na próxima coluna: SpringLayout. n A classe SpringUtilities define o método makecompactgrid que permite facilmente alinhar múltiplas colunas e linhas de componentes. Escolhendo o Layout Manager n Caso seja necessário apresentar componentes em um layout complexo temse: GridBagLayout, e SpringLayout. n Outra opção é agrupar os componentes em um ou mais JPanel. Com esta abordagem cada JPanel pode empregar um layout manager diferente. 25

26 BorderLayout n O BorderLayout tem 5 áreas especificadas pelas constantes: PAGE_START, PAGE_END, LINE_START, LINE_END, e CENTER. BorderLayout n Ao aumentar a janela, a área central ocupa grande parte do espaço disponível. n Geralmente são usadas apenas uma ou duas das áreas do BorderLayout só o centro (center), ou o center e o bottom. n No próximo slide será apresentado um exemplo usando o content pane. Como o content pane usa o BorderLayout por default, não foi necessário estabelecer o layout manager. Border Layout...// Container pane = aframe.getcontentpane()... JButton button = new JButton("Button 1 (PAGE_START)"); pane.add(button, BorderLayout.PAGE_START); // Faz o componente central grande como é típico // para o BorderLayout. button = new JButton("Button 2 (CENTER)"); button.setpreferredsize(new Dimension(200, 100)); pane.add(button, BorderLayout.CENTER); button = new JButton("Button 3 (LINE_START)"); pane.add(button, BorderLayout.LINE_START); button = new JButton("Long-Named Button 4 (PAGE_END)"); pane.add(button, BorderLayout.PAGE_END); button = new JButton("5 (LINE_END)"); pane.add(button, BorderLayout.LINE_END); 26

27 BorderLayout n O BorderLayout não coloca nenhum espaço entre os componentes. n Um espaço (gap) pode ser especificado (em pixels) através do construtor: BorderLayout(int horizontalgap, int verticalgap) n Também podem ser usados os métodos abaixo para especificar os gap hoprizontais e verticais, respecticvamente: void sethgap(int) void setvgap(int) BoxLayout n O BoxLayout empilha os componentes uns sobre os outros ou os enfileira. BoxLayout n O BoxLayout, quando em pilha, tenta posicionar os controles com a altura especificada. n Caso não haja espaço suficiente, serão ajustadas as alturas de cada componente. n Pode ser que não seja possível o correto posicionamento dos controles, uma vez que o BoxLayout respeita os valores mínimos e máximos de altura atribuídos aos controles. 27

28 CardLayout n O CardLayout auxilia a posicionar 2 ou mais componentes (geralmente instancias de JPanel). n É necessário permitir que o usuário escolha o componente, para tal podem ser usadas combo box ou tabbed pane, por exemplo. CardLayout CardLayoutDemo.java TabDemo.java FlowLayout n O FlowLayout posiciona os componentes em uma linha com os tamanhos por eles definidos e é o padrão para a classe JPanel. n Se o espaço horizontal não for suficiente são usadas várias linhas. n Se o espaço for maior que o necessário, por padrão, os controles são centralizados horizontalmente. n Pode ser especificado que o alinhamento seja a esquerda ou a direita, através do construtor, bem como especificar o espaçamento ao redor dos componentes. 28

29 FlowLayout contentpane.setlayout(new FlowLayout()); contentpane.add(new JButton("Button 1")); contentpane.add(new JButton("Button 2")); contentpane.add(new JButton("Button 3")); contentpane.add(new JButton( "Long-Named Button 4")); contentpane.add(new JButton("5")); GridLayout n O GridLayout posiciona os em uma grade. componentes n Cada componente ocupa completamente uma célula da grade e cada célula tem exatamente o mesmo tamanho. n Se o tamanho do container (a janela) for alterado o tamanho das células e dos componentes também é feito. GridLayout pane.setlayout(new GridLayout(0,2)); pane.add(new JButton("Button 1")); pane.add(new JButton("Button 2")); pane.add(new JButton("Button 3")); pane.add(new JButton("Long-Named Button 4")); pane.add(new JButton("5")); 29

30 GridBagLayout n GridBagLayout é um dos mais flexíveis e complexos dos layout managers. n Os componentes são posicionados em uma grade, permitindo que estes ocupem mais de uma célula. n As linhas não precisam ter a mesma altura e as colunas não necessitam ter a mesma largura. n Essencialmente, posiciona os componentes, com os seus tamanhos pré-definidos, em células de uma grade. A partir da dimensão dos componentes determina o tamanho das células. GridBagConstraints n Um código típico para usar o GRidBagLayout seria: JPanel pane = new JPanel(new GridBagLayout()); GridBagConstraints c = new GridBagConstraints(); //Para cada componente a ser adicionado: //...Cria o componente... //...Atribui valores para a intancia do // GridBagConstraints... pane.add(thecomponent, c); GridBagConstriants JButton button; pane.setlayout(new GridBagLayout()); GridBagConstraints c = new GridBagConstraints(); c.fill = GridBagConstraints.HORIZONTAL;... button = new JButton("5"); c.ipady = 0; //reset para o default c.weighty = 1.0; //coloca um espaço extra vertical c.anchor = GridBagConstraints.PAGE_END; // bottom of space c.insets = new Insets(10,0,0,0); //espaço no topo c.gridx = 1; //alinhamento com button 2 c.gridwidth = 2; //lagura de 2 colunas c.gridy = 2; //terceira linha pane.add(button, c); 30

31 GridBagConstriants n n gridx, gridy Especifica a linha e coluna do canto superior esquerdo do componente. Recomenda-se que seja especificado para cada componente. gridwidth, gridheight Especifica o número de colunas (gridwidth) e linhas (gridheight), especifica o número de células que o componente usa, não o número de pixels. O valor default é 1. Note: o GridBagLayout só permite que sejam usadas mais de uma linha pelo componente que estiver na coluna mais a esquerda ou se for especificado valores positivos para gridx e gridy. n GridBagConstriants fill Usado quando o componente é menor que a área alocada definindo como proceder para redimensionar o componente. Valores válidos (constantes GridBagConstraints): NONE (default), HORIZONTAL, VERTICAL, e BOTH. n ipadx, ipady Especifica o espaçamento interno. Quanto deve ser adicionado ao tamanho do componente. O valor default é zero. n insets Especifica o espaçamento externo, o espaço mínimo entre os componentes. O default é zero. GridBagConstriants n anchor Usado quando o componente é menor que a área e determina onde colocar o componnte. Valores válidos (constantes GridBagConstraints): CENTER (default), PAGE_START START, PAGE_END END, LINE_START START, LINE_END END, FIRST_LINE LINE_START, FIRST_LINE_END, LAST_LINE LINE_END, e LAST_LINE LINE_START FIRST_LINE_START PAGE_START FIRST_LINE_END LINE_START CENTER LINE_END LAST_LINE_START PAGE_END LAST_LINE_END

32 GridBagConstriants n weightx, weighty Weights são usados para determinar como distribuir o espaço pelas colunas (weightx) e pelas linhas (weighty); é importante para o comportamento de redimensionamento. Se não for especificado nenhum valor diferente de zero, todos os componentes são colocados no centro da célula. GridBagLayout n Caso seja aumentada a janela do exemplo, pode-se notar que o botão 5 fica com todoo espaço vertical extra. n O novo espaço horizontal é dividido com as outras colunas. n Este comportamento é função dos weights que o programa estabeleceu para este componente. GridBagLayout 32

33 SpringLayout n O Springlayouts define relações entre as arestas dos componentes, por exemplo, define que a aresta esquerda de um componente fica a uma distância fixa da aresta direita de um outro componente. n Como padrão define a altura e largura de um componente (a distância entre as arestas superior e inferior, e entre as arestas esquerda e direita) para ser algo entre os valores máximos e mínimos, e, se possível, o preferred do componente. n A distância entre as arestas é representad por objetos Spring. Cada spring tem 4 atributos: minimum, preferred, maximum e o atual. n Os springs associados a cada componente são agrupados no objeto SpringLayout.Constraints Constraints. LunarPhases.java n Este exemplo possui 3 paineis (panels) Exemplo 5 n VoteDialog.java Radio Buttons Dialogs 33

34 Radio Button n Radio buttons são um conjunto de opções agrupadas onde apenas uma opção pode ser escolhida. n Swing implementa radio buttons através das classes JRadioButton e ButtonGroup classes. n Para colocar um radio button num menu, emprega-se a classe JRadioButtonMenuItem. Radio Button n Toda vez que um JRadioButton é clicado são gerados os eventos: ActionEvent; e um ou dois ItemEvent (um do que foi selecionado e outro do que perdeu a seleção). n Para cada grupo de radio buttons, é necessário criar uma instância de ButtonGroup e adicionar cada radio button a ela. JRadioButton e JButtonGroup n Para cada grupo de radio buttons, é necessário um JButtonGroup e adicionar cada JRadioButton a ele. n JButtonGroup são responsáveis por liberar o radio button quando o usuário seleciona uma outra opção no grupo. 34

35 JRadioButton e JButtonGroup final int numbuttons = 4; JRadioButton[] radiobuttons = new JRadioButton[numButtons]; final ButtonGroup group = new ButtonGroup();... final String defaultmessagecommand = "default"; final String yesnocommand = "yesno"; final String yeahnahcommand = "yeahnah"; final String ynccommand = "ync"; radiobuttons[0] = new JRadioButton("<html>Candidate 1: <font color=red>sparky the Dog</font></html>"); radiobuttons[0].setactioncommand(defaultmessagecommand); JRadioButton e JButtonGroup radiobuttons[1] = new JRadioButton("<html>Candidate 2: <font color=green>shady Sadie</font></html>"); radiobuttons[1].setactioncommand(yesnocommand); radiobuttons[2] = new JRadioButton("<html>Candidate 3: <font color=blue>r.i.p. McDaniels</font></html>"); radiobuttons[2].setactioncommand(yeahnahcommand); radiobuttons[3] = new JRadioButton("<html>Candidate 4: <font color=maroon>duke the Java<font size=-2> <sup>tm</sup> </font size> Platform ascot</font></html>"); radiobuttons[3].setactioncommand(ynccommand); for (int i = 0; i < numbuttons; i++) { group.add(radiobuttons[i]); } //Select the first button by default. radiobuttons[0].setselected(true); Dialogs n Para criar uma janela de diálogo simples, usa-se a classe JOptionPane. n Toda janela de diálogo é dependente de um Frame. 35

36 JOptionPane n Para apresentar uma janela de mensagem simples com JOptionPane: JOptionPane.showMessageDialog( frame, "There's no \"there\" there."); 36

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

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

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

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

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

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

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

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

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Servidor de Aplicações WEB Tomcat Servidor Tomcat Foi desenvolvido

Leia mais

Pacote Java Swing Parte 1

Pacote Java Swing Parte 1 Pacote Java Swing Parte 1 José Gustavo de Souza Paiva Introdução GUI (Graphical User Interface) Mecanismo amigável ao usuário para interagir com um aplicativo Proporciona a um aplicativo uma aparência

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

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

JAVA. Marcio de Carvalho Victorino. Interface Gráfica em Java (GUI)

JAVA. Marcio de Carvalho Victorino. Interface Gráfica em Java (GUI) JAVA Marcio de Carvalho Victorino 1 Interface Gráfica em Java (GUI) 1 2 Introdução Java fornece um forte suporte para a construção de interfaces gráficas através do pacote java.awt GUI inicial do Java:

Leia mais

INTERFACE COM O USUÁRIO (em Java) Programação Orientada a Objetos

INTERFACE COM O USUÁRIO (em Java) Programação Orientada a Objetos INTERFACE COM O USUÁRIO (em Java) Programação Orientada a Objetos Chegamos à interface com o usuário. Você já utilizou alguns métodos para dialogar com o usuário, quer enviando mensagens quer lendo dados.

Leia mais

Criação de Applets Package: Class Name Base Class: Generate header comments: Can run standalone: Generate Standard methods:

Criação de Applets Package: Class Name Base Class: Generate header comments: Can run standalone: Generate Standard methods: Criação de Applets Após ter sido criado o projeto, ao contrário dos exemplos anteriores onde criávamos uma aplicação na guia General da janela Object Gallery, agora iremos criar uma applet que está contida

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

Interface com o Usuário (UI) UIs Desacopladas (2/3) BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos

Interface com o Usuário (UI) UIs Desacopladas (2/3) BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos Interface com o Usuário (UI) BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos Humberto Mossri de Almeida hmossri_cursos@yahoo.com.br Marcelo Nassau Malta nassau_cursos@yahoo.com.br

Leia mais

Entender princípios de projeto. Capacitação para construir GUIs. Entender os pacotes que contém componentes de GUI, e as classes e interfaces de

Entender princípios de projeto. Capacitação para construir GUIs. Entender os pacotes que contém componentes de GUI, e as classes e interfaces de Parte I Entender princípios de projeto. Capacitação para construir GUIs. Entender os pacotes que contém componentes de GUI, e as classes e interfaces de tratamentos de eventos. Criar e manipular botões,

Leia mais

Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs

Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs Interfaces Gráficas e Eventos - 1 Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar as classes JFrame, JButton, JLabel, ImageIcon,

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

Tratamento de Eventos

Tratamento de Eventos Tratamento de Eventos Prof. Marcelo Cohen 1. Visão Geral Para implementar a funcionalidade de uma interface gráfica, pode-se fazer uso de uma repetição sem fim: Faz algum processamento Verifica se o mouse

Leia mais

Módulo 7. Interface Gráfica com o Usuário GUI - Introdução. Programação Orientada a Objetos I Java (Rone Ilídio)

Módulo 7. Interface Gráfica com o Usuário GUI - Introdução. Programação Orientada a Objetos I Java (Rone Ilídio) Módulo 7 Interface Gráfica com o Usuário GUI - Introdução Programação Orientada a Objetos I Java (Rone Ilídio) Interface Gráfica com o Usuário Os elementos gráficos utilizados estão no pacote javax.swing.*

Leia mais

JFC/Swing. Java Avançado Interface Gráfica JFC/Swing. Introdução JFC / Swing. Introdução JFC / Swing

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

Leia mais

Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br. 25 de julho de 2010. SCC0604 - Programação Orientada a Objetos

Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br. 25 de julho de 2010. SCC0604 - Programação Orientada a Objetos Interface Gráca com Swing 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)

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

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

Programação Orientada a Objetos II

Programação Orientada a Objetos II Programação Orientada a Objetos II Interfaces Márcio Alves de Macêdo Baseado no material de: ime.usp Cronograma Pacotes gráficos da linguagem Java Container AWT Component AWT Pacotes gráficos A linguagem

Leia mais

Programação Java. Construção de Interfaces com Swing (I)

Programação Java. Construção de Interfaces com Swing (I) Programação Java 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 a criação

Leia mais

Caso não exista nenhum listener registado no objecto que gera o evento, este não terá qualquer efeito.

Caso não exista nenhum listener registado no objecto que gera o evento, este não terá qualquer efeito. Interfaces Gráficas e Eventos - 10 Programação por eventos Um evento ocorre quando o utilizador interage com um objecto gráfico:. manipular um botão com o rato;. introduzir texto num campo de texto. seleccionar

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

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo.

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo. 7. Carregando e mostrando imagens locais Esta aula complementa os estudos de programação de interfaces gráficas em Java mostrando como podemos carregar imagens de arquivos locais ou da Internet para uso

Leia mais

Componentes Parte 03

Componentes Parte 03 Componentes Parte 03 Prof. Edwar Saliba Júnior Setembro de 2012 Unidade 05 Componentes Parte 03 1 JTable Componente capaz de mostrar dados na tela de maneira tabular. Partes visuais do JTable: Título:

Leia mais

1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo:

1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo: 1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo: boolean[][] bool = new boolean[5][5]; for(int v = 0; v < bool.length; v++) { for(int f = 0; f < bool[v].length;

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

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

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

Programação Visual em Java

Programação Visual em Java Programação Visual em Java 1 Sumário Introdução Contentores Componentes Layouts Eventos Exemplos 2 Introdução Interfaces gráficas são compostas por: Contentores Janelas, painéis Componentes botões, menus,

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

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

Slide 1 Deitel/Deitel, 8e. Java Como programar Copyright 2010 Pearson Education

Slide 1 Deitel/Deitel, 8e. Java Como programar Copyright 2010 Pearson Education Java Como Programar, 8/E Slide 1 Slide 2 (C) 2010 Pearson Education, Inc. Todos os direitos reservados. Slide 3 Slide 4 Neste capítulo, discutimos: Componentes e gerenciadores de layout adicionais e projetamos

Leia mais

Eclipse IDE Dá-se importância aos antepassados quando já não temos nenhum. Francois Chateaubriand

Eclipse IDE Dá-se importância aos antepassados quando já não temos nenhum. Francois Chateaubriand Eclipse IDE Dá-se importância aos antepassados quando já não temos nenhum. Francois Chateaubriand O Eclipse O Eclipse (www.eclipse.org) e uma IDE (integrated development environment). Diferente de uma

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

Programação de Interfaces Gráficas. Aula 1. Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.

Programação de Interfaces Gráficas. Aula 1. Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress. Programação de Interfaces Gráficas Aula 1 Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.com "Use o seu tempo para melhorar a si mesmo através dos escritos

Leia mais

Criação de Applets com o JBuilder Professor Sérgio Furgeri

Criação de Applets com o JBuilder Professor Sérgio Furgeri OBJETIVOS DA AULA: Apresentar o processo de criação em uma interface gráfica para a Internet; Fornecer subsídios para que o aluno possa compreender onde aplicar Applets; Demonstrar a criação de uma Applet

Leia mais

Capítulo 12 Eventos de interacção

Capítulo 12 Eventos de interacção Capítulo 12 Eventos de interacção Eventos em Java Referência aos pacotes awt e swing Programação com botões e campos de texto Eventos, fontes de eventos e atendimento de eventos Qualquer programa deve

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

Curso Java Starter. www.t2ti.com 1

Curso Java Starter. www.t2ti.com 1 1 Apresentação O Curso Java Starter foi projetado com o objetivo de ajudar àquelas pessoas que têm uma base de lógica de programação e desejam entrar no mercado de trabalho sabendo Java, A estrutura do

Leia mais

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

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: imagecomposite FACULDADE DE TECNOLOGIA SENAC PELOTAS JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: imagecomposite FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: Diego Silva de Oliveira Identificação da Turma: 070801805 Data: 16/05/2010 imagecomposite

Leia mais

Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.

Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this. Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.x = x; this.y = y; public String tostring(){ return "(" + x + "," +

Leia mais

Arquitetura de Tratamento de Eventos em Programas com GUI - Graphical User Interface

Arquitetura de Tratamento de Eventos em Programas com GUI - Graphical User Interface Arquitetura de Tratamento de Eventos em Programas com GUI - Graphical User Interface Jorge H. C. Fernandes (jorge@dimap.ufrn.br) UFRN Abril de 2002 Programas com GUI Separação De Abstrações Arquitetura

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

1 Criando um aplicativo visual em Java

1 Criando um aplicativo visual em Java 1 Criando um aplicativo visual em Java Inicie o Netbeans e nele crie um novo projeto, em categorias escolha Java e em projetos escolha Aplicativo Java, na próxima janela escreva o nome do projeto PrimeiroAplicativoVisual

Leia mais

Programação Gráfica em Java.

Programação Gráfica em Java. Programação Gráfica em Java. Objetivo: Ao final da aula o aluno deverá ser capaz de desenvolver a aplicação gráfica ilustrada ao lado. A interface gráfica será simples, composta por elementos de menus.

Leia mais

Exemplo 1. Um programa que cria uma instância de uma classe que herda da classe Frame

Exemplo 1. Um programa que cria uma instância de uma classe que herda da classe Frame 6. Como aplicações gráficas funcionam em Java? Todas as aplicações gráficas em Java usam instâncias de classes existentes, que por serem parte da linguagem podem ser executadas em todas as versões de Java

Leia mais

Introdução à Programação. Interfaces Gráficas

Introdução à Programação. Interfaces Gráficas Introdução à Programação Interfaces Gráficas Tópicos da Aula Hoje vamos ver conceitos mais avançados de Interfaces Gráficas Elementos de uma GUI Componente Eventos Listeners Padrão Observer Painel Exemplos

Leia mais

Roteiro para criação de Applet

Roteiro para criação de Applet Roteiro para criação de Applet 1. Abra um editor de texto qualquer, como o Bloco de notas, e digite o código abaixo: 1. import java.awt.*; 2. import java.awt.event.*; 3. import java.applet.applet; 4. import

Leia mais

JCheckbox JRadioButton JComboBox JList JMenu... Alguns componentes já vistos em aula JButton JLabel JTextField

JCheckbox JRadioButton JComboBox JList JMenu... Alguns componentes já vistos em aula JButton JLabel JTextField Profa. Isabel Harb Manssour (Material adaptado das aulas dos Profs: Luciana Nedel,Bernardo Copstein,Leandro Pompermaier,Júlio Machado) JCheckbox JRadioButton JComboBox JList JMenu Alguns componentes já

Leia mais

Curso de Java Módulo II Swing Fábio Mengue fabio@unicamp.br Centro de Computação - Unicamp

Curso de Java Módulo II Swing Fábio Mengue fabio@unicamp.br Centro de Computação - Unicamp Curso de Java Módulo II Swing Fábio Mengue fabio@unicamp.br Centro de Computação - Unicamp Conceitos Swing é um pacote de classes que servem para a construção de GUI's (Graphical User Interface). O pacote

Leia mais

Lidar com números e estatísticas não é fácil. Reunir esses números numa apresentação pode ser ainda mais complicado.

Lidar com números e estatísticas não é fácil. Reunir esses números numa apresentação pode ser ainda mais complicado. , ()! $ Lidar com números e estatísticas não é fácil. Reunir esses números numa apresentação pode ser ainda mais complicado. Uma estratégia muito utilizada para organizar visualmente informações numéricas

Leia mais

Construção de Interfaces Gráficas

Construção de Interfaces Gráficas Construção de Interfaces Gráficas Mário Antonio Meireles Teixeira DEINF UFMA Baseado em material original de João Carlos Pinheiro CEFET/MA 1 Objetivos Apresentar Os fundamentos da construção GUI em Java

Leia mais

Guia de Início Rápido

Guia de Início Rápido Guia de Início Rápido O Microsoft Word 2013 parece diferente das versões anteriores, por isso criamos este guia para ajudar você a minimizar a curva de aprendizado. Barra de Ferramentas de Acesso Rápido

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

JAVA APLICAÇÕES GRÁFICAS Propriedade Utilizada: FontSizeAnimation

JAVA APLICAÇÕES GRÁFICAS Propriedade Utilizada: FontSizeAnimation JAVA APLICAÇÕES GRÁFICAS Propriedade Utilizada: FontSizeAnimation FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: Paulo Renato S. Veiga Identificação da Turma: 205 Noite Data: 16/05/10 1 Nome da Propriedade

Leia mais

Natureza do Software e dos Sistemas

Natureza do Software e dos Sistemas Natureza do Software e dos Sistemas Jorge H C Fernandes Diferença Fundamental entre Engenharia de Software e outras Engenharias! Os materiais são diferentes As teorias fundamentais são diferentes Dificuldades

Leia mais

Introdução a programação gráfica em Java com Swing

Introdução a programação gráfica em Java com Swing Página 1 de 14 Home Login Criar Login Fórum Tópicos Recentes Notícias Artigos / Tutoriais Busca Sobre o GUJ Apoio Introdução a programação gráfica em Java com Swing Rafael Steil Querendo fazer programas

Leia mais

JTABLE STUDENT CONTROL JSC Gil Eduardo de Andrade / Emílio Rudolfo Fey Neto

JTABLE STUDENT CONTROL JSC Gil Eduardo de Andrade / Emílio Rudolfo Fey Neto JTABLE STUDENT CONTROL JSC Gil Eduardo de Andrade / Emílio Rudolfo Fey Neto INTRODUÇÃO / DESCRIÇÃO O sistema JTable Student Control - JSC disponibiliza uma interface gráfica em Java que possibilita ao

Leia mais

Versão 2.2.0 PIMACO AUTOADESIVOS LTDA. Assistente Pimaco + 2.2.0. Ajuda ao Usuário

Versão 2.2.0 PIMACO AUTOADESIVOS LTDA. Assistente Pimaco + 2.2.0. Ajuda ao Usuário Versão 2.2.0 PIMACO AUTOADESIVOS LTDA. Assistente Pimaco + 2.2.0 Ajuda ao Usuário A S S I S T E N T E P I M A C O + 2.2.0 Ajuda ao usuário Índice 1. BÁSICO 1 1. INICIANDO O APLICATIVO 2 2. O AMBIENTE DE

Leia mais

http://www.blender.org/ Curso de extensão em Blender Prof. Luiz Gonzaga Damasceno

http://www.blender.org/ Curso de extensão em Blender Prof. Luiz Gonzaga Damasceno 1. Introdução http://www.blender.org/ Curso de extensão em Blender Prof. Luiz Gonzaga Damasceno Damasceno www.damasceno.info - damasceno12@hotmail.com Google: Blender 3D: Guia de sobrevivência 1. Introdução

Leia mais

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. 1 - Criando uma classe em Java Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. Antes de criarmos a(s) classe(s) é necessário criar o projeto

Leia mais

Universidade Federal de Santa Maria UFSM Centro de Tecnologia CT. Power Point. Básico

Universidade Federal de Santa Maria UFSM Centro de Tecnologia CT. Power Point. Básico Universidade Federal de Santa Maria UFSM Centro de Tecnologia CT Power Point Básico Santa Maria, julho de 2006 O Power Point é um aplicativo do Microsoft Office direcionado à criação de apresentações.

Leia mais

Linguagem Java - Prof. Luciana Porcher Nedel 1. Um container genérico e visual. Ela trabalha em cooperação com o controle de layouts.

Linguagem Java - Prof. Luciana Porcher Nedel 1. Um container genérico e visual. Ela trabalha em cooperação com o controle de layouts. Componentes Swing Estrutura de componentes de altonível: JFrame, JApplet, JDialog Linguagem Java - Prof. Luciana Porcher Nedel 1 JPanel Um container genérico e visual. Ela trabalha em cooperação com o

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

( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO

( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO Serviço Nacional de Aprendizagem Comercial E.E.P. Senac Pelotas Centro Histórico Programa Nacional de Acesso ao Ensino Técnico e Emprego Curso Técnico em Informática ( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO

Leia mais

Gerenciadores de Layout Parte 1

Gerenciadores de Layout Parte 1 Gerenciadores de Layout Parte 1 1. Objetivos Os gerenciadores de layout têm a função de definir o layout a ser usado num componente gráfico, com um painel ou um frame, isto é, o gerenciador permite dividir

Leia mais

Interface Gráfica. LPG II Java Interface Gráfica AWT. Introdução. AWT - Abstract Window Toolkit

Interface Gráfica. LPG II Java Interface Gráfica AWT. Introdução. AWT - Abstract Window Toolkit Interface Gráfica LPG II Java Interface Gráfica AWT Introdução AWT Construção de uma Aplicação Gráfica A Classe Componente e sua Hierarquia Gerenciadores de Layout Modelo de Eventos Componentes Básicos

Leia mais

Treinamento Excel 2010 Thalles Cezar Montenegro

Treinamento Excel 2010 Thalles Cezar Montenegro + Treinamento Excel 2010 Thalles Cezar Montenegro + Agenda Histórico Interface Principais Menus Salvando arquivos Abrindo arquivos Formatação + Histórico Surgiu em 1985 para Mac Fazer tudo o que o 1-2-3

Leia mais

Jogo Da Velha. - Parte 1 - Fazendo a parte gráfica do jogo da Velha

Jogo Da Velha. - Parte 1 - Fazendo a parte gráfica do jogo da Velha Jogo Da Velha - Parte 1 - Fazendo a parte gráfica do jogo da Velha por: Lerói Oliveira Equipe PAJÉ cti.paje@gmail.com http://www.cti.furg.br/informatica/paje Primeiro vamos usar a classe JFrame para criar

Leia mais

ÍNDICE... 2 INTRODUÇÃO... 4

ÍNDICE... 2 INTRODUÇÃO... 4 Mic crosoft Excel 201 0 ÍNDICE ÍNDICE... 2 INTRODUÇÃO... 4 Interface... 4 Guias de Planilha... 5 Movimentação na planilha... 6 Entrada de textos e números... 7 Congelando painéis... 8 Comentários nas Células...

Leia mais

Sistema de Recursos Humanos

Sistema de Recursos Humanos Sistema de Recursos Humanos Projeto 1 O objetivo desse sistema é gerenciar a admissão e a demissão de funcionários. Esse funcionário pode ou não ter dependentes. Esse funcionário está alocado em um departamento

Leia mais

Posicionamento e Layout com CSS

Posicionamento e Layout com CSS Posicionamento e Layout com CSS Esquemas de posicionamento: absolute e relative Construção de layouts com divs e regras CSS Existem quatro tipos de posicionamento em CSS: estático, relativo, absoluto

Leia mais

O Windows 7 é um sistema operacional desenvolvido pela Microsoft.

O Windows 7 é um sistema operacional desenvolvido pela Microsoft. Introdução ao Microsoft Windows 7 O Windows 7 é um sistema operacional desenvolvido pela Microsoft. Visualmente o Windows 7 possui uma interface muito intuitiva, facilitando a experiência individual do

Leia mais

Aplicações Gráficas com AWT

Aplicações Gráficas com AWT Aplicações Gráficas com AWT O AWT fornece um conjunto de elementos de interface gráfica padrão (botões, janelas, menus, campos de edição, campos de seleção e outros) incluindo o sistema de tratamento de

Leia mais

Is Event Dispatcher Threade (Animation)

Is Event Dispatcher Threade (Animation) JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Is Event Dispatcher Threade (Animation) FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: João Vitor Ávila dos Santos Identificação da Turma: 3º Semestre/

Leia mais

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no

Leia mais

Table of Contents. PowerPoint XP

Table of Contents. PowerPoint XP Table of Contents Finalizando a apresentação...1 Usando anotações...1 Desfazer e repetir...1 Localizar e substituir...2 Substituir...2 Efeitos de transição...3 Esquema de animação...6 Controlando os tempos

Leia mais

CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A 1 2 3 4 F 1 2 3 4 B 1 2 3 4 G 1 2 3 4 C 1 2 3 4 H 1 2 3 4 D 1 2 3 4 I 1 2 3 4 E 1 2 3 4 J 1 2 3 4

CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A 1 2 3 4 F 1 2 3 4 B 1 2 3 4 G 1 2 3 4 C 1 2 3 4 H 1 2 3 4 D 1 2 3 4 I 1 2 3 4 E 1 2 3 4 J 1 2 3 4 ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 3º PERÍODO - 6º MÓDULO AVALIAÇÃO A3 DATA 09/07/2009 PROGRAMAÇÃO Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO

Leia mais

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word 2010. Sumário

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word 2010. Sumário CADERNO DE INFORMÁTICA FACITA Faculdade de Itápolis Aplicativos Editores de Texto WORD 2007/2010 Sumário Editor de texto... 3 Iniciando Microsoft Word... 4 Fichários:... 4 Atalhos... 5 Área de Trabalho:

Leia mais

Informática Básica para o PIBID

Informática Básica para o PIBID Universidade Federal Rural do Semi Árido Programa Institucional de Iniciação à Docência Informática Básica para o PIBID Prof. Dr. Sílvio Fernandes Roteiro O Tamanho e Resolução de imagens O Compactação

Leia mais

GASweb - Usabilidade Parte 1-3

GASweb - Usabilidade Parte 1-3 GASweb - Usabilidade Parte 1-3 Nível Básico Por: Lucas Bruno O GASweb - Application Generator é um produto que oferece aos seus usuários o grande aumento de produtividade. Entretanto, assim como as demais

Leia mais

Interface Gráfica Swing. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Interface Gráfica Swing. Leonardo Gresta Paulino Murta leomurta@ic.uff.br Interface Gráfica Swing Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aula de hoje Criação de interface gráfica via biblioteca Swing Containers Componentes Menu Layout Bordas Eventos Leonardo Murta

Leia mais

Inserindo Dados no Banco de Dados Paradox.

Inserindo Dados no Banco de Dados Paradox. Inserindo Dados no Banco de Dados Paradox. - Construção do Banco de Dados: Para podermos inserir algo em um banco precisaremos de um Banco de Dados, para isto iremos montar um utilizando o Programa Database

Leia mais

Introdução ao Processamento de Imagens com o IRIS Por Rodolfo Barros

Introdução ao Processamento de Imagens com o IRIS Por Rodolfo Barros Introdução ao Processamento de Imagens com o IRIS Por Rodolfo Barros O IRIS é um software poderoso para o processamento de imagens astronômicas. Ele possui métodos avançados para realizar uma grande quantidade

Leia mais

Desenvolvendo aplicações

Desenvolvendo aplicações Desenvolvendo aplicações 22 para a Web Uma aplicação Java pode ser executada sem modificação em qualquer plataforma que tenha a máquina virtual Java instalada. Esta característica faz com que as aplicações

Leia mais

Barra de Títulos. Barra de Menu. Barra de Ferramentas. Barra de Formatação. Painel de Tarefas. Seleção de Modo. Área de Trabalho.

Barra de Títulos. Barra de Menu. Barra de Ferramentas. Barra de Formatação. Painel de Tarefas. Seleção de Modo. Área de Trabalho. Conceitos básicos e modos de utilização das ferramentas, aplicativos e procedimentos do Sistema Operacional Windows XP; Classificação de softwares; Principais operações no Windows Explorer: criação e organização

Leia mais

Iniciando o MySQL Query Brower

Iniciando o MySQL Query Brower MySQL Query Brower O MySQL Query Browser é uma ferramenta gráfica fornecida pela MySQL AB para criar, executar e otimizar solicitações SQL em um ambiente gráfico. Assim como o MySQL Administrator foi criado

Leia mais

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna O que é uma planilha eletrônica? É um aplicativo que oferece recursos para manipular dados organizados em tabelas. A partir deles pode-se gerar gráficos facilitando a análise e interpretação dos dados

Leia mais

1 - INTRODUÇÃO AO AutoCAD 2011

1 - INTRODUÇÃO AO AutoCAD 2011 1 - INTRODUÇÃO AO AutoCAD 2011 1.1- INTRODUÇÃO Este capítulo tem como objetivo principal familiarizar o usuário com a interface do AutoCAD 2011, isto é, a forma com a qual o usuário se comunica com o software

Leia mais

Programação por Objectos. Interfaces gráficas. MEEC@IST Swing 1/52

Programação por Objectos. Interfaces gráficas. MEEC@IST Swing 1/52 Programação por Objectos Interfaces gráficas MEEC@IST Swing 1/52 Introdução (1) O Java disponibiliza um conjunto de pacotes para geração de unidades de interface gráfica (GUI). AWT (Abstract Window Toolkit)

Leia mais

Construção de Interfaces Gráficas - Introdução

Construção de Interfaces Gráficas - Introdução Construção de Interfaces Gráficas - Introdução Programação Orientada a Objetos Java Prof. Geraldo Braz Junior Objetivos Apresentar Os fundamentos da construção GUI em Java Modelo de Eventos AWT Biblioteca

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