SlideShare uma empresa Scribd logo
1 de 72
Baixar para ler offline
INTERFACES GRÁFICAS
SWING – PARTE 3
Prof.ª M.ª Elaine Cecília Gatto
MENUS E SUBMENUS
ASPECTOS BÁSICOS
• JMenuBar: um objeto que contém o menu de nível superior do
aplicativo
• Jmenu: um menu é composto por um ou mais JMenuItens. É o menu
padrão.
• JMenuItem: um objeto que preenche os menus
• JCheckBoxMenuItem: um item de menu de caixa de seleção
• JRadioButtonMenuItem: um item de menu de botão de rádio
ASPECTOS BÁSICOS
• Para criar um menu principal para uma aplicação:
• Criar um objeto JMenuBar (container para menus)
• Um JMenu é adicionado a um JMenuBar
• Cada JMenu contem um ou mais itens selecionáveis
• JMenuItem define uma seleção que pode ser feita por um
usuário e é o iten exibido por um JMenu
• JCheckBoxMenuItem e JRadioButtonMenuItem extendem e
JMenuItem: menus padrão ou popup
ASPECTOS BÁSICOS
• Todos os itens de menu são essencialmente botões pois
estendem de AbstractButton
• Criando submenus:
• Criar e preencher um objeto Jmenu
• Depois adiciona-lo a outro objeto Jmenu
ASPECTOS BÁSICOS
• Um evento de ação é gerado quando um item de menu é
selecionado
• Examinando o comando de ação você pode determinar qual
item do menu foi selecionado
• Sistemas de menu tendem a ficar muito grandes, tomar
cuidado ao programa-los
JMENUBAR
• Conjunto mínimo para a construção de menus: JMENUBAR,
JMENU e JMENUITEM
• Container para menus
• Herda de Jcomponent
• Inicialmente a barra estará vazia.
• Deve ser preenchida com menus antes de usá-la
• Cada aplicação tem UMA E SOMENTE UMA barra de menus
JMENUBAR
• Método add(): adiciona um menu à barra de menus:
Jmenu add(Jmenu menu)
• Menu é uma instancia de Jmenu que é adicionada à barra de
menus
• Menus são posicionados da esquerda para a direita na ordem de
adição
JMENUBAR
• Para adicionar um menu em um local especifico usar
Component add (Component menu, int índice)
• Menu é adicionado no ÍNDICE especificado
• 0 é o valor inicial. Um menu com índice 0 fica na extrema
esquerda
JMENUBAR
• Para remover um menu que não deseja mais:
remove (Component menu)
• Ou
remove (int índice)
• Menu é uma referencia ao menu que será removido.
• Índice é o valor do índice do menu que se quer remover
JMENUBAR
• Para obter o numero de itens do menu
getMenuComponentCount()
• Para obter um array dos itens do menu
Component[] getMenuComponentes()
JMENUITEM
• Encapsula um elemento de menu
• Elementos:
• Opção vinculada a alguma ação do programa (salvar ou
fechar)
• Pode fazer um submenu ser exibido
• Todo item de um menu pode ser considerado um tipo
especial de botão
JMENUITEM
• Construtor: cria um item de menu com um nome
especifico:
JMenuItem (String nome)
• Ativar ou desativar um item de menu:
setEnable(boolean enable)
MENU PRINCIPAL
• Definido pela barra de menus
• É o mais usado
• Cromo criar um menu principal:
• Criar um objeto jmenubar
• Construir cada menu que estará na barra
• Incluir itens (jmenuitem)
MENU PRINCIPAL
• Cromo criar um menu principal:
• Adicionar os menus à barra de menus
• A barra de menus deve ser adicionada a um jframe
• Cada item de menu deve ter um ouvinte de ação e um
tratador de eventos
MENU PRINCIPAL
• EXEMPLO:
• MenuDemo (menu estático)
• DayMenuDemo (menu dinâmico)
TECLAS DE ATALHO
• Mnemônicos
• Define uma tecla cuja digitação permite a seleção de um item
em um menu ativo
• Aceleradores
• É uma tecla que permite a seleção de um item de menu sem
ser preciso ativar o menu antes
TECLAS DE ATALHO
• Um mnemônico pode ser especificado quando um objeto for
construído:
JMenuItem(String nome, int mnem)
• Definir um mnemônico:
setMnemonic(int mnem)
TECLAS DE ATALHO
• Int mnem:
• constantes definidas em java.awt.event.KeyEvent
• KeyEvent.VK_A
• KeyEvent.VK_B
• KeyEvent.VK_C
• ETC.
• Mnemônicos não diferenciam maiúsculas de minúsculas
TECLAS DE ATALHO
• Padrão: primeira letra coincidente do item de menu será
sublinhada
• Para sublinhar uma letra diferente: especificar o índice da
letra como argumento em
setDisplayedMnemonicInfdex(int indice)
TECLAS DE ATALHO
• Aceleradores
setAccelerator( KeyStroke ks )
• Ks é a combinação de teclas que é pressionada na seleção
do item de menu
• KeyStroke é uma classe que contém métodos para a
construção de vários tipos de aceleradores por
pressionamento de teclas
TECLAS DE ATALHO
getKeyStroke( int ch, int modificador )
• Ch especifica o caracteres acelerador e é um valor de tipo
KEYEVENT
• Modificador deve ser uma ou mais das seguintes constantes
• InputEvent.ALT_DOWN_MASK,
InputEvent.CTRL_DOWN_MASK,
InputEvent.SHIFT_DOWN_MASK,
InputEvent.ALT_GRAPH_DOWN_MASK,
InputEvent.META_DOWN_MASK
TECLAS DE ATALHO
• Tecla de caracteres: VK_A
• Modificador: INPUTEVENT.CTRL_DOWN_MASK
• RESULTADO: CTRL + A será o atalho
• Exemplo: MenuDemoMnem
TECLAS DE ATALHO
• Tecla de caracteres: VK_A
• Modificador: INPUTEVENT.CTRL_DOWN_MASK
• RESULTADO: CTRL + A será o atalho
• Exemplo: MenuDemoMnem
• Usar ALT + tecla para selecionar o menu principal e CTRL +
tecla para as opções do menu
IMAGENS
• Uma imagem pode ser adicionada em um menu
JMenItem ( Icon imagem )
• Cria um item de menu que exibe a imagem especificada
JMenuItem ( String nome, Icon imagem )
• Cria um item de menu com o nome e a imagem
especificados
IMAGENS
• Um ícone pode ser adicionado a um item de menu, basta
usar setIcon()
• ícone de desativação: é exibido quando o item de menu
estiver inativo, basta usar setDisableIcon()
• Dica de ferramenta: um texto que aparece quando você para
o mouse sobre ele: setToolTipoText (String dica).
Exemplo: jmiSobre.setToolTipText(“Sobre este
programa”);
JCheckBoxMenuitem
• Podem otimizar seu aplicativo
• JCheckBoxMenuitem herda de JMenuItem
• Funciona como uma caixa de seleção autônoma
• Gera eventos de ação e um evento de item quando seu estado
muda
JCheckBoxMenuItem ( String nome )
• Constroi um item de menu de caixa de seleção com o nome
especificado
JCheckBoxMenuItem
• Constroi um item de menu de caixa de seleção com o nome eo
estado de seleção especificado
JCheckBoxMenuItem ( String nome, boolean estado )
• Se estado for TRUE, a caixa estará marcada
JRadioButtonMenuItem
• Funciona como um botão de rádio autônomo
• Gera eventos de item e ação
• Devem ser inseridos em um grupo de botões para exibirem um
comportamento de seleção mutuamente exclusivo
JRadioButtonMenuItem ( String nome )
• Cria um item de menu de botão de rádio associado ao nome
especificado por nome
JRadioButtonMenuItem
• Cria um item de menu de botão de rádio com o nome e o estado
de seleção especificado
JRadioButtonMenuItem ( String nome, boolean estado )
• Se estado for igual a true, inicialmente o botão estará
pressionado.
• Exemplo: MenuDemoReC
JRadioButtonMenuItem
• Cria um item de menu de botão de rádio com o nome e o estado
de seleção especificado
JRadioButtonMenuItem ( String nome, boolean estado )
• Se estado for igual a true, inicialmente o botão estará
pressionado.
• Exemplo: MenuDemoReC
CAIXAS DE DIÁLOGO
INTRODUÇÃO
• Usado em situações em que é necessário vincular dois ou mais
desses controles como uma unidade para tratar operações de
entrada mais sofisticadas.
• É um janela separada que solicita algum tipo de resposta ao
usuário
INTRODUÇÃO
• Contem pelo menos uma MENSAGEM e um BOTÃO
• Fornece uma maneira de organizar os componentes necessários
a situações de entrada complexas
• Fornece ao programa uma maneira de solicitar ao usuário a
entrada que precisa para prosseguir
INTRODUÇÃO
• Exemplos:
• Uma caixa de diálogo para permitir selecionar a fonte, o tamanho
e o estilo do texto.
• Uma caixa de diálogo para pedir o nome de usuário e a senha e
esperar até que os dados sejam inseridos.
• Uma caixa de diálogo que permita configurar uma conexão de
modem.
JOPTIONPANE
• É uma caixa de dialogo simples.
• Interage com o usuário e espera uma resposta.
• Exemplo: deseja sair do programa?
• Quatro tipos básicos:
• Mensagem
• Confirmação
• Entrada
• Opções
JOPTIONPANE
• Mensagem:
• Exibe uma mensagem e espera até o usuário pressionar
o botão ok
• Forma de assegurar que o usuário está ciente de
algumas informações
• Exemplo: informar ao usuário que uma conexão de rede
foi perdida
JOPTIONPANE
• Confirmação:
• Faz uma pergunta ao usuário e espera o usuário
escolher
• Normalmente usada quando uma ação deve ser
confirmada
• Exemplo: sair sem salvar?
JOPTIONPANE
• Entrada:
• Permite que o usuário insira uma string ou selecione um
item de uma lista
• Exemplo: obter um nome do teclado
• OPÇÕES:
• Permite especificar uma lista de opções para o usuário
selecionar
JOPTIONPANE
• JOPTIONPANE não deriva de JDIALOG
• JOPTIONPANE é um container para os componentes que
serão usados pelo diálogo
• JOPTIONPANE usa JDIALOG
• JOPTIONPANE constrói um objeto JDIALOG
automaticamente e se adiciona a esse objeto
JOPTIONPANE
• JOPTIONPANE fornece uma maneira otimizada de criar e
gerenciar caixas de diálogos simples
• CAIXAS MODAIS:
• É uma caixa que demanda uma resposta antes do programa
continuar.
• Não é possível redirecionar o FOCO para outra parte do
aplicativo sem antes fechar esta janela.
• Interrompe o programa até o que o usuário responda
JOPTIONPANE
• MODELESS:
• Caixas de diálogos não modais
• NÃO impede que outras partes do programa sejam
usadas
• O foco pode ser redirecionado para outra janelas
JOPTIONPANE
• JOPTIONPANE dá suporte a duas categorias básicas de
métodos SHOW (mostrar)
• MAIS COMUM: Uma caixa de diálogo que usa JDIALOG
para conter o diálogo
• MENOS COMUM: Usa JINTERNALFRAME para conter o
diálogo
JOPTIONPANE
• Quatro métodos FACTORY para criar caixas de diálogo
padrão baseadas em JDIALOG:
• showConfirmDialog()
• showInputDialog()
• showMessageDialog()
• showOptionDialog()
SHOWMESSAGEDIALOG()
• Caixa de dialogo mais simples que pode se construída
• Exibe uma mensagem E espera o usuário apertar um botão
showMessageDialog(Component pai, Object msg);
• Pai = especifica o componente em relação ao qual a caixa de
diálogo será exibida
SHOWMESSAGEDIALOG()
• Se pai = null: a caixa de diálogo é exibida no centro da tela.
• MSG = mensagem a ser exibida
• Exceção:
• HEADLESSEXCEPTION
• Ocorre se tentar exibir uma caixa de diálogo em um
ambiente não interativo (mouse ou teclado
desconectados)
SHOWMESSAGEDIALOG()
• EXEMPLO: MsgDialogDemo
• Segunda forma de usar showMessageDialog()
showMessageDialog(Component pai, Object msg, String
titulo, int msg)
• titulo = especifica um título para a caixa de diálogo
• Msg = natureza da mensagem conforme tabela a seguir
SHOWMESSAGEDIALOG()
• ERROR_MESSAGE: indica que uma mensagem de erro será exibida.
Ícone de erro.
• INFORMATION_MESSAGE: indica que uma mensagem informativa será
exibida. Mensagem padrão.
• PLAIN_MESSAGE: indica uma mensagem simples. Sem ícone.
• QUESTION_MESSAGE: indica que uma mensagem interrogativa será
exibida.
• WARNING_MESSAGE: indica que uma mensagem de aviso será exibida.
Ícone de aviso
SHOWMESSAGEDIALOG()
• Terceira forma de usar showMessageDialog()
showMessageDialog(Component pai, Object msg, String
titulo, int msg, Icon imagem)
• Você pode especificar a imagem desejada para o ícone.
SHOW CONFIRM DIALOG
• Solicita uma resposta básica SIM/NÃO ao usuário
showConfirmDialog(Component pai, Object msg);
• Pai = especifica o componente em relação ao qual a caixa de
diálogo será exibida. Se NULL então é exibida no centro
• MSG = mensagem
SHOW CONFIRM DIALOG
• Exemplo: ConfirmDialogDemo
• OUTRAS FORMAS
• showConfirmDialog(Component pai, Object msg, String
titulo, int op);
• showConfirmDialog(Component pai, Object msg, String
titulo, int Opc, int iMsg);
• showConfirDialog(Component pai, Object msg, String
titulo, int Opc, int iMsg, Icon icon);
SHOW CONFIRM DIALOG
• As opções são os botões que o usuário pode selecionar e
são definidos pelas constantes:
• OK_CANCEL_OPTION: inclui botões OK e CANCEL
• YES_NO_OPTION: inclui botões YES e NO
• YES_NO_CANCEL_OPTION: inclui botões YES, NO e
CANCEL
Lembre-se de tratar corretamente as ações!
SHOW CONFIRM DIALOG
• iMsg deve ser uma das constantes a seguir
• ERROR_MESSAGE
• INFORMATION_MESSAGE
• PLAIN_MESSAGE
• QUESTION_MESSAGE
• WARNING_MESSAGE
• O ícone pode ser modificado por meio de ICON
SHOW INPUT DIALOG
• O usuário pode inserir uma string
showInputDialog(Object msg);
• Retorna a string digitada pelo usuário em MSG quando se
pressiona OK
• Ao pressionar CANCELAR tudo é descartado
SHOW INPUT DIALOG
• Exemplo
• OUTRAS FORMAS:
• showInputDialog(Object msg, Object valorInicial);
• showInputDialog(Component pai, Object msg);
• showInputDialog(Component pai, Object msg, Object
valorInicial);
SHOW INPUT DIALOG
• OUTRAS FORMAS:
• showInputDialog(Component pai, Object msg, String titulo, int
iMsg);
• showInputDialog(Component pai, Object msg, String titulo, int
iMsg, Icon imagem, Object [ ] vals, Object valorInicial);
SHOW INPUT DIALOG
• valorInicial: valor inicial a ser inserido no campo de texto
• Titulo: especifica o titulo
• iMsg: tipo de caixa de diálogo
• Icon: ícone
• VALS: conjunto de opções
SHOW OPTION DIALOG
• Cria uma caixa de diálogo que contem elementos a serem
especificados, isto é, uma caixa personalizada
showOptionDialog(Component pai, Object msg, String titulo,
int op, int ims, Icon ícone, Object[] opções, Object
valorInicial);
SHOW OPTION DIALOG
• O parâmetro opções somente será usado se OP for NULL
• Opções: DEFAULT_OPTION, OK_CANCEL_OPTION,
YES_NO_OPTION, YES_NO_CANCEL_OPTION
• Opções: contem as opções que serão exibidas na caixa de
diálogo
• Cada string do array passa a ser o nome de um botão que ao ser
pressionado retorna o índice e fecha a janela
SHOW OPTION DIALOG
• Exemplo
• Não há controle sobre o layout, isto é, não sabemos como os
botões aparecerão na caixa de diálogo
• As opções personalizadas sobrepõem as opções padrão
• O formato das caixas de diálogo não mudam muito e bem
definidos, por isso são mais limitadas.
JDIALOG
• Componentes podem ser adicionados a ele
• Gerenciador de layout é atributo a ele
• Um tamanho pode ser especificado
• setVisible() também é usado
• Uma barra de menus pode lhe ser dada
• Herda várias classes
• Caixas modais ou não modais
JDIALOG
Jdialog(Frame pai, String titulo, boolean modal)
• Cria uma caixa de diálogo cujo proprietário é especificado
por pai
• Se modal for TRUE, a caixa será modal
• O titulo da caixa é especificado por titulo
JDIALOG
• Para criar e exibir uma caixa de diálogo criada por JDIALOG
• Criar um objeto JDIALOG
• Especificar o gerenciador de layout
• Especificar o tamanho
• Especificar a forma de fechamento padrão
• Adicionar componentes ao painel de conteúdo na caixa
• Exibir a caixa
JDIALOG
• setVisible(false): remove uma caixa de dialogo. Use este
recurso quando precisar usar a caixa com frequência no
aplicativo. Apenas remove a caixa da tela.
• dispose(): quando for usar poucas vezes. Libera todos os
recursos associados a caixa
• Exemplo:
JDIALOG
• Caixa não modal
Jdialog(Frame pai, String titulo)
• EXEMPLO: JDialogDemoNaoModal
JFILECHOOSER
• É uma caixa de diálogo interna
• Automatiza uma janela de seleção de arquivos
• É consistente e eficiente
JFileChooser();
• Exibe o diretório padrão
JFILECHOOSER
JFileChooser(File dir)
JFileChosser(String dir)
• Exibe o diretório especificado por DIR
• Se DIR = NULL então o diretório padrão será usado
JFILECHOOSER
• Métodos para exibir JFilechooser
• showOpenDialog(Component pai): Open dialog exibe
a caixa de diálogo padrão OPEN
• showSaveDialog(Component pai): exibe a caixa de
dialogo padrão SAVE
• showDialog(Component pai, String nome): especifica
um titulo e um nome de botão personalizado
JFILECHOOSER
• Todos os métodos retornam um inteiro que indica o
resultado do processo de seleção de arquivo
• APPROVE_OPTION: arquivo selecionado
• CANCEL_OPTION: usuário cancelou a ação
• ERROR_OPTION: erro encontrado
JFILECHOOSER
• Se retornar APPROVE_OPTION não significa que o arquivo
exista ou o nome seja válido
• Método que retorna um objeto FILE e representa o arquivo
selecionado:
getSelectedFile()
• Dentre outros métodos aprendidos em arquivos
JFILECHOOSER
• Diretórios são tipos especiais de arquivos
• Exemplo:
• JFileChooser
• FileChooserDemo
• JavaFilefilter
EXERCÍCIOS

Mais conteúdo relacionado

Mais procurados

Atalhos do teclado
Atalhos do tecladoAtalhos do teclado
Atalhos do tecladoandre
 
Livro 3 win 98
Livro 3  win 98Livro 3  win 98
Livro 3 win 98J M
 
Capitulo 14 -_componentes_gui_parte_3
Capitulo 14 -_componentes_gui_parte_3Capitulo 14 -_componentes_gui_parte_3
Capitulo 14 -_componentes_gui_parte_3Pedro Neto
 
Excel Basic com VBA - Macros
Excel Basic com VBA - MacrosExcel Basic com VBA - Macros
Excel Basic com VBA - MacrosJoao Sousa
 
So vista completo [modo de compatibilidade]
So vista completo [modo de compatibilidade]So vista completo [modo de compatibilidade]
So vista completo [modo de compatibilidade]navegananet
 
Aula - 04 - Android - Interface grafica (layout, widgets)
Aula - 04 - Android - Interface grafica (layout, widgets)Aula - 04 - Android - Interface grafica (layout, widgets)
Aula - 04 - Android - Interface grafica (layout, widgets)Arthur Emanuel
 
Capitulo 14 -_componentes_gui_parte_1
Capitulo 14 -_componentes_gui_parte_1Capitulo 14 -_componentes_gui_parte_1
Capitulo 14 -_componentes_gui_parte_1Pedro Neto
 

Mais procurados (14)

Java 17 Swing
Java 17 SwingJava 17 Swing
Java 17 Swing
 
Java gui
Java guiJava gui
Java gui
 
Win7pdf
Win7pdfWin7pdf
Win7pdf
 
Java Swing
Java SwingJava Swing
Java Swing
 
Atalhos do teclado
Atalhos do tecladoAtalhos do teclado
Atalhos do teclado
 
Livro 3 win 98
Livro 3  win 98Livro 3  win 98
Livro 3 win 98
 
Windows xp 2 páginas
Windows xp   2 páginasWindows xp   2 páginas
Windows xp 2 páginas
 
Java10
Java10Java10
Java10
 
Windows xp módulo ii
Windows xp   módulo iiWindows xp   módulo ii
Windows xp módulo ii
 
Capitulo 14 -_componentes_gui_parte_3
Capitulo 14 -_componentes_gui_parte_3Capitulo 14 -_componentes_gui_parte_3
Capitulo 14 -_componentes_gui_parte_3
 
Excel Basic com VBA - Macros
Excel Basic com VBA - MacrosExcel Basic com VBA - Macros
Excel Basic com VBA - Macros
 
So vista completo [modo de compatibilidade]
So vista completo [modo de compatibilidade]So vista completo [modo de compatibilidade]
So vista completo [modo de compatibilidade]
 
Aula - 04 - Android - Interface grafica (layout, widgets)
Aula - 04 - Android - Interface grafica (layout, widgets)Aula - 04 - Android - Interface grafica (layout, widgets)
Aula - 04 - Android - Interface grafica (layout, widgets)
 
Capitulo 14 -_componentes_gui_parte_1
Capitulo 14 -_componentes_gui_parte_1Capitulo 14 -_componentes_gui_parte_1
Capitulo 14 -_componentes_gui_parte_1
 

Semelhante a Interfaces Gráficas em Java Parte 3

Semelhante a Interfaces Gráficas em Java Parte 3 (15)

CURSO JAVA 02
CURSO JAVA 02CURSO JAVA 02
CURSO JAVA 02
 
Como Implementar Um Menu Ribbon em C#
Como Implementar Um Menu Ribbon em C#Como Implementar Um Menu Ribbon em C#
Como Implementar Um Menu Ribbon em C#
 
Aplicações java com netbeans
Aplicações  java com  netbeansAplicações  java com  netbeans
Aplicações java com netbeans
 
Construindo aplicações com netbeans
Construindo aplicações com netbeansConstruindo aplicações com netbeans
Construindo aplicações com netbeans
 
Apostila: Netbeans
Apostila: NetbeansApostila: Netbeans
Apostila: Netbeans
 
Interfaces windows em c sharp
Interfaces windows em c sharpInterfaces windows em c sharp
Interfaces windows em c sharp
 
Interface grafica
Interface graficaInterface grafica
Interface grafica
 
Revisão de Java paraAV1.docx
Revisão de Java paraAV1.docxRevisão de Java paraAV1.docx
Revisão de Java paraAV1.docx
 
Wind 7 passo a passo
Wind 7 passo a passoWind 7 passo a passo
Wind 7 passo a passo
 
Android bootcamp 06-01-2012 Part 1
Android bootcamp  06-01-2012 Part 1Android bootcamp  06-01-2012 Part 1
Android bootcamp 06-01-2012 Part 1
 
Curso de informática basica apresentação 2
Curso de informática basica   apresentação 2Curso de informática basica   apresentação 2
Curso de informática basica apresentação 2
 
Aula1 c++ builder
Aula1   c++ builderAula1   c++ builder
Aula1 c++ builder
 
Inventor
InventorInventor
Inventor
 
2335 inventor
2335 inventor2335 inventor
2335 inventor
 
Guia utilizacao2012
Guia utilizacao2012Guia utilizacao2012
Guia utilizacao2012
 

Mais de Elaine Cecília Gatto

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaElaine Cecília Gatto
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaElaine Cecília Gatto
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Elaine Cecília Gatto
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCElaine Cecília Gatto
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxElaine Cecília Gatto
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Elaine Cecília Gatto
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarElaine Cecília Gatto
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesElaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationElaine Cecília Gatto
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfElaine Cecília Gatto
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoElaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsElaine Cecília Gatto
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoElaine Cecília Gatto
 

Mais de Elaine Cecília Gatto (20)

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 

Último

Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSOLeloIurk1
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
matematica aula didatica prática e tecni
matematica aula didatica prática e tecnimatematica aula didatica prática e tecni
matematica aula didatica prática e tecniCleidianeCarvalhoPer
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?AnabelaGuerreiro7
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfHELENO FAVACHO
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfHELENO FAVACHO
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
Slides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxSlides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxMauricioOliveira258223
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesFabianeMartins35
 

Último (20)

Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
matematica aula didatica prática e tecni
matematica aula didatica prática e tecnimatematica aula didatica prática e tecni
matematica aula didatica prática e tecni
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
Slides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxSlides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptx
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
 

Interfaces Gráficas em Java Parte 3

  • 1. INTERFACES GRÁFICAS SWING – PARTE 3 Prof.ª M.ª Elaine Cecília Gatto
  • 3. ASPECTOS BÁSICOS • JMenuBar: um objeto que contém o menu de nível superior do aplicativo • Jmenu: um menu é composto por um ou mais JMenuItens. É o menu padrão. • JMenuItem: um objeto que preenche os menus • JCheckBoxMenuItem: um item de menu de caixa de seleção • JRadioButtonMenuItem: um item de menu de botão de rádio
  • 4. ASPECTOS BÁSICOS • Para criar um menu principal para uma aplicação: • Criar um objeto JMenuBar (container para menus) • Um JMenu é adicionado a um JMenuBar • Cada JMenu contem um ou mais itens selecionáveis • JMenuItem define uma seleção que pode ser feita por um usuário e é o iten exibido por um JMenu • JCheckBoxMenuItem e JRadioButtonMenuItem extendem e JMenuItem: menus padrão ou popup
  • 5. ASPECTOS BÁSICOS • Todos os itens de menu são essencialmente botões pois estendem de AbstractButton • Criando submenus: • Criar e preencher um objeto Jmenu • Depois adiciona-lo a outro objeto Jmenu
  • 6. ASPECTOS BÁSICOS • Um evento de ação é gerado quando um item de menu é selecionado • Examinando o comando de ação você pode determinar qual item do menu foi selecionado • Sistemas de menu tendem a ficar muito grandes, tomar cuidado ao programa-los
  • 7. JMENUBAR • Conjunto mínimo para a construção de menus: JMENUBAR, JMENU e JMENUITEM • Container para menus • Herda de Jcomponent • Inicialmente a barra estará vazia. • Deve ser preenchida com menus antes de usá-la • Cada aplicação tem UMA E SOMENTE UMA barra de menus
  • 8. JMENUBAR • Método add(): adiciona um menu à barra de menus: Jmenu add(Jmenu menu) • Menu é uma instancia de Jmenu que é adicionada à barra de menus • Menus são posicionados da esquerda para a direita na ordem de adição
  • 9. JMENUBAR • Para adicionar um menu em um local especifico usar Component add (Component menu, int índice) • Menu é adicionado no ÍNDICE especificado • 0 é o valor inicial. Um menu com índice 0 fica na extrema esquerda
  • 10. JMENUBAR • Para remover um menu que não deseja mais: remove (Component menu) • Ou remove (int índice) • Menu é uma referencia ao menu que será removido. • Índice é o valor do índice do menu que se quer remover
  • 11. JMENUBAR • Para obter o numero de itens do menu getMenuComponentCount() • Para obter um array dos itens do menu Component[] getMenuComponentes()
  • 12. JMENUITEM • Encapsula um elemento de menu • Elementos: • Opção vinculada a alguma ação do programa (salvar ou fechar) • Pode fazer um submenu ser exibido • Todo item de um menu pode ser considerado um tipo especial de botão
  • 13. JMENUITEM • Construtor: cria um item de menu com um nome especifico: JMenuItem (String nome) • Ativar ou desativar um item de menu: setEnable(boolean enable)
  • 14. MENU PRINCIPAL • Definido pela barra de menus • É o mais usado • Cromo criar um menu principal: • Criar um objeto jmenubar • Construir cada menu que estará na barra • Incluir itens (jmenuitem)
  • 15. MENU PRINCIPAL • Cromo criar um menu principal: • Adicionar os menus à barra de menus • A barra de menus deve ser adicionada a um jframe • Cada item de menu deve ter um ouvinte de ação e um tratador de eventos
  • 16. MENU PRINCIPAL • EXEMPLO: • MenuDemo (menu estático) • DayMenuDemo (menu dinâmico)
  • 17. TECLAS DE ATALHO • Mnemônicos • Define uma tecla cuja digitação permite a seleção de um item em um menu ativo • Aceleradores • É uma tecla que permite a seleção de um item de menu sem ser preciso ativar o menu antes
  • 18. TECLAS DE ATALHO • Um mnemônico pode ser especificado quando um objeto for construído: JMenuItem(String nome, int mnem) • Definir um mnemônico: setMnemonic(int mnem)
  • 19. TECLAS DE ATALHO • Int mnem: • constantes definidas em java.awt.event.KeyEvent • KeyEvent.VK_A • KeyEvent.VK_B • KeyEvent.VK_C • ETC. • Mnemônicos não diferenciam maiúsculas de minúsculas
  • 20. TECLAS DE ATALHO • Padrão: primeira letra coincidente do item de menu será sublinhada • Para sublinhar uma letra diferente: especificar o índice da letra como argumento em setDisplayedMnemonicInfdex(int indice)
  • 21. TECLAS DE ATALHO • Aceleradores setAccelerator( KeyStroke ks ) • Ks é a combinação de teclas que é pressionada na seleção do item de menu • KeyStroke é uma classe que contém métodos para a construção de vários tipos de aceleradores por pressionamento de teclas
  • 22. TECLAS DE ATALHO getKeyStroke( int ch, int modificador ) • Ch especifica o caracteres acelerador e é um valor de tipo KEYEVENT • Modificador deve ser uma ou mais das seguintes constantes • InputEvent.ALT_DOWN_MASK, InputEvent.CTRL_DOWN_MASK, InputEvent.SHIFT_DOWN_MASK, InputEvent.ALT_GRAPH_DOWN_MASK, InputEvent.META_DOWN_MASK
  • 23. TECLAS DE ATALHO • Tecla de caracteres: VK_A • Modificador: INPUTEVENT.CTRL_DOWN_MASK • RESULTADO: CTRL + A será o atalho • Exemplo: MenuDemoMnem
  • 24. TECLAS DE ATALHO • Tecla de caracteres: VK_A • Modificador: INPUTEVENT.CTRL_DOWN_MASK • RESULTADO: CTRL + A será o atalho • Exemplo: MenuDemoMnem • Usar ALT + tecla para selecionar o menu principal e CTRL + tecla para as opções do menu
  • 25. IMAGENS • Uma imagem pode ser adicionada em um menu JMenItem ( Icon imagem ) • Cria um item de menu que exibe a imagem especificada JMenuItem ( String nome, Icon imagem ) • Cria um item de menu com o nome e a imagem especificados
  • 26. IMAGENS • Um ícone pode ser adicionado a um item de menu, basta usar setIcon() • ícone de desativação: é exibido quando o item de menu estiver inativo, basta usar setDisableIcon() • Dica de ferramenta: um texto que aparece quando você para o mouse sobre ele: setToolTipoText (String dica). Exemplo: jmiSobre.setToolTipText(“Sobre este programa”);
  • 27. JCheckBoxMenuitem • Podem otimizar seu aplicativo • JCheckBoxMenuitem herda de JMenuItem • Funciona como uma caixa de seleção autônoma • Gera eventos de ação e um evento de item quando seu estado muda JCheckBoxMenuItem ( String nome ) • Constroi um item de menu de caixa de seleção com o nome especificado
  • 28. JCheckBoxMenuItem • Constroi um item de menu de caixa de seleção com o nome eo estado de seleção especificado JCheckBoxMenuItem ( String nome, boolean estado ) • Se estado for TRUE, a caixa estará marcada
  • 29. JRadioButtonMenuItem • Funciona como um botão de rádio autônomo • Gera eventos de item e ação • Devem ser inseridos em um grupo de botões para exibirem um comportamento de seleção mutuamente exclusivo JRadioButtonMenuItem ( String nome ) • Cria um item de menu de botão de rádio associado ao nome especificado por nome
  • 30. JRadioButtonMenuItem • Cria um item de menu de botão de rádio com o nome e o estado de seleção especificado JRadioButtonMenuItem ( String nome, boolean estado ) • Se estado for igual a true, inicialmente o botão estará pressionado. • Exemplo: MenuDemoReC
  • 31. JRadioButtonMenuItem • Cria um item de menu de botão de rádio com o nome e o estado de seleção especificado JRadioButtonMenuItem ( String nome, boolean estado ) • Se estado for igual a true, inicialmente o botão estará pressionado. • Exemplo: MenuDemoReC
  • 33. INTRODUÇÃO • Usado em situações em que é necessário vincular dois ou mais desses controles como uma unidade para tratar operações de entrada mais sofisticadas. • É um janela separada que solicita algum tipo de resposta ao usuário
  • 34. INTRODUÇÃO • Contem pelo menos uma MENSAGEM e um BOTÃO • Fornece uma maneira de organizar os componentes necessários a situações de entrada complexas • Fornece ao programa uma maneira de solicitar ao usuário a entrada que precisa para prosseguir
  • 35. INTRODUÇÃO • Exemplos: • Uma caixa de diálogo para permitir selecionar a fonte, o tamanho e o estilo do texto. • Uma caixa de diálogo para pedir o nome de usuário e a senha e esperar até que os dados sejam inseridos. • Uma caixa de diálogo que permita configurar uma conexão de modem.
  • 36. JOPTIONPANE • É uma caixa de dialogo simples. • Interage com o usuário e espera uma resposta. • Exemplo: deseja sair do programa? • Quatro tipos básicos: • Mensagem • Confirmação • Entrada • Opções
  • 37. JOPTIONPANE • Mensagem: • Exibe uma mensagem e espera até o usuário pressionar o botão ok • Forma de assegurar que o usuário está ciente de algumas informações • Exemplo: informar ao usuário que uma conexão de rede foi perdida
  • 38. JOPTIONPANE • Confirmação: • Faz uma pergunta ao usuário e espera o usuário escolher • Normalmente usada quando uma ação deve ser confirmada • Exemplo: sair sem salvar?
  • 39. JOPTIONPANE • Entrada: • Permite que o usuário insira uma string ou selecione um item de uma lista • Exemplo: obter um nome do teclado • OPÇÕES: • Permite especificar uma lista de opções para o usuário selecionar
  • 40. JOPTIONPANE • JOPTIONPANE não deriva de JDIALOG • JOPTIONPANE é um container para os componentes que serão usados pelo diálogo • JOPTIONPANE usa JDIALOG • JOPTIONPANE constrói um objeto JDIALOG automaticamente e se adiciona a esse objeto
  • 41. JOPTIONPANE • JOPTIONPANE fornece uma maneira otimizada de criar e gerenciar caixas de diálogos simples • CAIXAS MODAIS: • É uma caixa que demanda uma resposta antes do programa continuar. • Não é possível redirecionar o FOCO para outra parte do aplicativo sem antes fechar esta janela. • Interrompe o programa até o que o usuário responda
  • 42. JOPTIONPANE • MODELESS: • Caixas de diálogos não modais • NÃO impede que outras partes do programa sejam usadas • O foco pode ser redirecionado para outra janelas
  • 43. JOPTIONPANE • JOPTIONPANE dá suporte a duas categorias básicas de métodos SHOW (mostrar) • MAIS COMUM: Uma caixa de diálogo que usa JDIALOG para conter o diálogo • MENOS COMUM: Usa JINTERNALFRAME para conter o diálogo
  • 44. JOPTIONPANE • Quatro métodos FACTORY para criar caixas de diálogo padrão baseadas em JDIALOG: • showConfirmDialog() • showInputDialog() • showMessageDialog() • showOptionDialog()
  • 45. SHOWMESSAGEDIALOG() • Caixa de dialogo mais simples que pode se construída • Exibe uma mensagem E espera o usuário apertar um botão showMessageDialog(Component pai, Object msg); • Pai = especifica o componente em relação ao qual a caixa de diálogo será exibida
  • 46. SHOWMESSAGEDIALOG() • Se pai = null: a caixa de diálogo é exibida no centro da tela. • MSG = mensagem a ser exibida • Exceção: • HEADLESSEXCEPTION • Ocorre se tentar exibir uma caixa de diálogo em um ambiente não interativo (mouse ou teclado desconectados)
  • 47. SHOWMESSAGEDIALOG() • EXEMPLO: MsgDialogDemo • Segunda forma de usar showMessageDialog() showMessageDialog(Component pai, Object msg, String titulo, int msg) • titulo = especifica um título para a caixa de diálogo • Msg = natureza da mensagem conforme tabela a seguir
  • 48. SHOWMESSAGEDIALOG() • ERROR_MESSAGE: indica que uma mensagem de erro será exibida. Ícone de erro. • INFORMATION_MESSAGE: indica que uma mensagem informativa será exibida. Mensagem padrão. • PLAIN_MESSAGE: indica uma mensagem simples. Sem ícone. • QUESTION_MESSAGE: indica que uma mensagem interrogativa será exibida. • WARNING_MESSAGE: indica que uma mensagem de aviso será exibida. Ícone de aviso
  • 49. SHOWMESSAGEDIALOG() • Terceira forma de usar showMessageDialog() showMessageDialog(Component pai, Object msg, String titulo, int msg, Icon imagem) • Você pode especificar a imagem desejada para o ícone.
  • 50. SHOW CONFIRM DIALOG • Solicita uma resposta básica SIM/NÃO ao usuário showConfirmDialog(Component pai, Object msg); • Pai = especifica o componente em relação ao qual a caixa de diálogo será exibida. Se NULL então é exibida no centro • MSG = mensagem
  • 51. SHOW CONFIRM DIALOG • Exemplo: ConfirmDialogDemo • OUTRAS FORMAS • showConfirmDialog(Component pai, Object msg, String titulo, int op); • showConfirmDialog(Component pai, Object msg, String titulo, int Opc, int iMsg); • showConfirDialog(Component pai, Object msg, String titulo, int Opc, int iMsg, Icon icon);
  • 52. SHOW CONFIRM DIALOG • As opções são os botões que o usuário pode selecionar e são definidos pelas constantes: • OK_CANCEL_OPTION: inclui botões OK e CANCEL • YES_NO_OPTION: inclui botões YES e NO • YES_NO_CANCEL_OPTION: inclui botões YES, NO e CANCEL Lembre-se de tratar corretamente as ações!
  • 53. SHOW CONFIRM DIALOG • iMsg deve ser uma das constantes a seguir • ERROR_MESSAGE • INFORMATION_MESSAGE • PLAIN_MESSAGE • QUESTION_MESSAGE • WARNING_MESSAGE • O ícone pode ser modificado por meio de ICON
  • 54. SHOW INPUT DIALOG • O usuário pode inserir uma string showInputDialog(Object msg); • Retorna a string digitada pelo usuário em MSG quando se pressiona OK • Ao pressionar CANCELAR tudo é descartado
  • 55. SHOW INPUT DIALOG • Exemplo • OUTRAS FORMAS: • showInputDialog(Object msg, Object valorInicial); • showInputDialog(Component pai, Object msg); • showInputDialog(Component pai, Object msg, Object valorInicial);
  • 56. SHOW INPUT DIALOG • OUTRAS FORMAS: • showInputDialog(Component pai, Object msg, String titulo, int iMsg); • showInputDialog(Component pai, Object msg, String titulo, int iMsg, Icon imagem, Object [ ] vals, Object valorInicial);
  • 57. SHOW INPUT DIALOG • valorInicial: valor inicial a ser inserido no campo de texto • Titulo: especifica o titulo • iMsg: tipo de caixa de diálogo • Icon: ícone • VALS: conjunto de opções
  • 58. SHOW OPTION DIALOG • Cria uma caixa de diálogo que contem elementos a serem especificados, isto é, uma caixa personalizada showOptionDialog(Component pai, Object msg, String titulo, int op, int ims, Icon ícone, Object[] opções, Object valorInicial);
  • 59. SHOW OPTION DIALOG • O parâmetro opções somente será usado se OP for NULL • Opções: DEFAULT_OPTION, OK_CANCEL_OPTION, YES_NO_OPTION, YES_NO_CANCEL_OPTION • Opções: contem as opções que serão exibidas na caixa de diálogo • Cada string do array passa a ser o nome de um botão que ao ser pressionado retorna o índice e fecha a janela
  • 60. SHOW OPTION DIALOG • Exemplo • Não há controle sobre o layout, isto é, não sabemos como os botões aparecerão na caixa de diálogo • As opções personalizadas sobrepõem as opções padrão • O formato das caixas de diálogo não mudam muito e bem definidos, por isso são mais limitadas.
  • 61. JDIALOG • Componentes podem ser adicionados a ele • Gerenciador de layout é atributo a ele • Um tamanho pode ser especificado • setVisible() também é usado • Uma barra de menus pode lhe ser dada • Herda várias classes • Caixas modais ou não modais
  • 62. JDIALOG Jdialog(Frame pai, String titulo, boolean modal) • Cria uma caixa de diálogo cujo proprietário é especificado por pai • Se modal for TRUE, a caixa será modal • O titulo da caixa é especificado por titulo
  • 63. JDIALOG • Para criar e exibir uma caixa de diálogo criada por JDIALOG • Criar um objeto JDIALOG • Especificar o gerenciador de layout • Especificar o tamanho • Especificar a forma de fechamento padrão • Adicionar componentes ao painel de conteúdo na caixa • Exibir a caixa
  • 64. JDIALOG • setVisible(false): remove uma caixa de dialogo. Use este recurso quando precisar usar a caixa com frequência no aplicativo. Apenas remove a caixa da tela. • dispose(): quando for usar poucas vezes. Libera todos os recursos associados a caixa • Exemplo:
  • 65. JDIALOG • Caixa não modal Jdialog(Frame pai, String titulo) • EXEMPLO: JDialogDemoNaoModal
  • 66. JFILECHOOSER • É uma caixa de diálogo interna • Automatiza uma janela de seleção de arquivos • É consistente e eficiente JFileChooser(); • Exibe o diretório padrão
  • 67. JFILECHOOSER JFileChooser(File dir) JFileChosser(String dir) • Exibe o diretório especificado por DIR • Se DIR = NULL então o diretório padrão será usado
  • 68. JFILECHOOSER • Métodos para exibir JFilechooser • showOpenDialog(Component pai): Open dialog exibe a caixa de diálogo padrão OPEN • showSaveDialog(Component pai): exibe a caixa de dialogo padrão SAVE • showDialog(Component pai, String nome): especifica um titulo e um nome de botão personalizado
  • 69. JFILECHOOSER • Todos os métodos retornam um inteiro que indica o resultado do processo de seleção de arquivo • APPROVE_OPTION: arquivo selecionado • CANCEL_OPTION: usuário cancelou a ação • ERROR_OPTION: erro encontrado
  • 70. JFILECHOOSER • Se retornar APPROVE_OPTION não significa que o arquivo exista ou o nome seja válido • Método que retorna um objeto FILE e representa o arquivo selecionado: getSelectedFile() • Dentre outros métodos aprendidos em arquivos
  • 71. JFILECHOOSER • Diretórios são tipos especiais de arquivos • Exemplo: • JFileChooser • FileChooserDemo • JavaFilefilter