JavaFX Classe de Controle e Eventos. Prof. Vicente Paulo de Camargo

Documentos relacionados
Selecione o WPF Application dentro de Templates > Visual C# > Windows

Fundamentos de Programação Java. Professor Vicente Paulo de Camargo

Crie um novo projeto conforme abaixo, encerrando com o botão Finalizar :

HABILITANDO A IDE DO ECLIPSE

Introdução à Ciência da Computação com Jogos Bruno Feijó - Esteban Clua - Fávio S. Corrêa da Silva

Windows Forms Applications - Introdução. Prof. Robinson Alves IFRN

EMF-TUTORIAL. O modelo a ser utilizado está no arquivo Rose library.mdl e tem a seguinte estrutura de classes:

Programação Orientada a Objetos II

TUTORIAL DE INSTALAÇÃO E USO DO OWL-S COMPOSER utilizando o Eclipse Galileo Modelling Tools

WINDOWS FORMS APPLICATION - Aplicação (Programa) que não usa a CONSOLE

Aula Extra Configuração do Eclipse com Hibernate

MANUAL. Localizador: Página: MN 016 SGI-INFRA- . Informação)

MANUAL DO USUÁRIO. Token SafeNet Authentication. Cliente 8.3 (x32 e x64)

Instalação e Atualização do Comércio-plus. Baixando o Arquivo de Instalação

Professor: Marcelo Nassau Malta

com JavaFX Scene Builder

JCLIC Passos Básicos Vamos criar um Projeto no Jclic: Abra o o Jclic, vá em ficheiro

Aplicativo de proteção de senha para as unidades de memória flash USB da Verbatim

MANUAL. Localizador: SGI-INFRA-

Laboratório Configuração do Backup e da Restauração de Dados no Windows 7 e no Vista

AMBIENTE VIRTUAL DE APRENDIZAGEM

Portal Educacional Professor On line

Suprimento >> Pedido >> Compra automática (Robô) >> Configurações >> Parâmetros de compra), representada pela Figura 1.

TUTORIAL AUTOCAD CIVIL 3D 2010 INTERSEÇÕES

Título: Como configurar o sistema para que seja realizado o cálculo do programa Pró-emprego?

Técnicas de Programação II

DatacardGroup IMPORTANDO DADOS (ACCESS - *.MDB) desde 1988 (11) Este procedimento não poderá ser efetuado com a versão ID WORKS INTRO

1. Instalando o Java 7 JavaFX e o Netbeans

Integrated Government Resources Planning IGRP Open Source. Como importar e contribuir - GitHub. Núcleo Operacional da Sociedade de Informação

COMPORTAMENTOS - Observações

Passo a passo Instrutor. GradeMark Correção de Documentos Adição de Comentários

Baixando o Arquivo de Instalação do Bentley topograph

JavaFX I DO THIS FOR YOU

Desenvolvimento para Android Prá9ca 2. Prof. Markus Endler

SISTEMA ADM ERP - MANUAL DO USUÁRIO. Conceitos Básicos

WINDOWS. Professor: Leandro Crescencio Colégio Politécnico 1

1. Estrutura do Projeto (0,2) pontos

Selecione o menu FILE NEW PROJECT como apresentado a seguir:

Escola Olímpio Curso: Técnico em Informática. Introdução e instalação

MANUAL. Certificado de Origem Digital PERFIL EXPORTADOR. Versão

Verificação Ortográfica

Introdução à Engenharia ENG1000

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 5- Tratamento de Eventos de Manipulação de textos

Conteúdo Como gerar os arquivos pelo WinMFD da Bematech?... 3 Como saber a data do arquivo?... 9 Como copiar os arquivos gerados para o PENDRIVE:...

Manual do Sistema PUSH

SGCD 2.0 Sistema Gerenciador de Conteúdo Dinâmico

Introdução ao Android. SECAP 2014 Prof. Rone Ilídio - UFSJ

Manual de acesso ao Portal do Contribuinte - SIGET

GUIA Assinaturas de

Como instalar o FIREBIRD

4. Configuração da interface no software megadmx

MANUAL OPERACIONAL E CONCEITUAL - Orientações sobre cadastro de atividades no SIGA Extensão

Programação Orientada por Objectos 2007/08

Executar uma macro clicando em um botão da Barra de Ferramentas de Acesso Rápido

Programação Orientada a Objetos (utilizando C#) Professor Emiliano S. Monteiro Versão 12 Out/2016.

Instruções de instalação do software de edição e conexão EmbroideryEditor. Exclusivo para máquina de bordar MC500E

DICAS DE UTILIZAÇÃO TDN BASE DE CONHECIMENTO

MANUAL DO PORTAL ACADÊMICO (PROFESSORES)

Iniciando um novo arquivo

PROGRAMAÇÃO ORIENTADA A OBJETOS. CC 3º Período

Paulo Afonso Professor: Nataniel Vieira T2

MANUAL DO USUÁRIO CONFIGURAÇÃO INICIAL INÍCIO

Pimenta Advocacia Sistema Online Departamento de Informática. Spark MANUAL DO USUÁRIO

Manual de Instalação Smart Security Interface Utility SSI User Edition Smart Security Interface SSI 4.9.3

1 Instalar navegador Google Chrome através deste link (clique)

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

Token SafeNet Authentication Cliente 8.3 (x32 e x64)

Visual Studio+SQL Server Express LocalDB ANTONIO LUIS

Interface Gráfica - Swing

SAA Cesurg. SAA Professor

Caminho: Cadastros>Vendas>Tabela de Preço Atualizar

Automação em Telas. Desenvolvimento IBM Maximo nível 1. Leonardo Almeida Bastos Versão 1.0

Instalação JDK 10/03/2017

1 Criando um aplicativo visual em Java

Fixo (41) Vivo (41) Tim (41) Claro (41) OI (41) Sistema Descomplicado CNPJ

Exercício de Estrutura de dados. Java Fila

SAUT. Coordenação Tecnológica. Serviço de Atendimento ao Usuário - Tecnologia. Criação de biblioteca de arquivos por categoria-moodle.

Desenvolvendo aplicações Java

1 Criando um projeto. Instituto Federal do Paraná

Manual do Usuário Linux Educacional 6.0 C3SL

Onde Cadastrar Os Dados Da Empresa. Onde Cadastrar Os Dados Da Empresa

Tipos de Publicações:

Rede VPN UFBA Procedimento para configuração

Sankhya Web Connection. Versão: 02 Criado em: 28/03/2017

Dialux evo Cálculo de Iluminação artificial para ambientes

SafeSign User Edition

Requisitos Mínimos. 1GB de espaço em disco 2GB de memória (recomendável 4GB) Versão mais recente do Java Acesso a Internet

Na seqüência, será aberta uma página de login de acesso ao ambiente de gerenciamento do portal, conforme ilustrado na figura 01, abaixo: Figura 01

Manual para abertura de ticket

Ajuda do Usuário do Forcepoint Secure Messaging

Rede VPN UFBA Procedimento para configuração

Unidade 11: Programando Swing com o NetBeans Prof. Daniel Caetano

TUTORIAL DO AMBIENTE VIRTUAL DE APRENDIZAGEM (AVA) MOODLE

Manual de instalação do software CSIBackup Versão 1.0

TRABALHANDO COM FUNÇÕES

Manual do Usuário MOZILLA FIREFOX

Sistema Click Principais Comandos

Manual do Webmail Zimbra TM

EXERCÍCIO 1_Casa Popular. tutorial 12 folhas de apresentação. Bibliografia

Manual de instalação e operação do Sistema Supervisório MMS-03

Transcrição:

JavaFX Classe de Controle e Eventos Prof. Vicente Paulo de Camargo

Labels são componentes que permitem auxiliar na compreensão de uma interface gráfica, principalmente para indicar as identificações de elementos em uma interface gráfica Um componente Label geralmente possui um texto de identificação Nas aplicações com internacionalização, os labels devem ser bem identificados (como variáveis) para facilitar a alteração do idioma As caixas de textos (TextField) permitem a entrada de dados pelo usuário Uma caixa de texto permite conteúdos alfanuméricos Para validar o conteúdo de uma caixa de texto é necessário utilizar de recursos específicos da plataforma ou de codificação específica Os botões (Button) permitem efetuar certas ações quando forem clicados A maioria dos componentes JavaFX permitem executar diversos eventos Uma caixa de texto possui, por exemplo, os eventos receber foco, perder foco, receber a digitação de uma tecla e outros Um botão pode receber evento de clicar do botão esquerdo ou direito, por exemplo

Um componente JavaFX possui propriedades como tamanho e altura, por exemplo, e também pode receber eventos realizados pelo usuário como click do mouse, perder o foco e outros Um evento é, portanto, uma ação que o usuário efetua sobre algum componente existente na interface gráfica O JavaFX permite associar uma classe de controle com o arquivo FXML de uma determinada interface gráfica (ou visão) Essa classe de controle permite ao JavaFX tratar os eventos que o usuário efetuará na interface gráfica sobre caixas de texto, botões e outros elementos disponíveis em uma interface gráfica Um evento corresponde a um método no código Java e esse código Java deve, preferencialmente, estar na classe de controle associada ao arquivo FXML da respectiva interface gráfica (ou visão).

Crie o projeto JavaFX com o nome SceneBuilderExemplo. Com o projeto SceneBuilderExemplo aberto no Eclipse, crie os pacotes controle e view em src. Crie a classe ViewControle.java no pacote controle Crie o arquivo ViewFXML.fxml no pacote view 1 Na janela New digite fxml e selecione New FXML Document e selecione Next O arquivo FXML ficará salvo no pacote view Na próxima janela informe ViewFXML em Name e Finish 3 2

Abra o arquivo ViewFXML.fxml pelo Scene Builder A janela do SceneBuilder é apresentada com o arquivo ViewFXML.fxml

Crie agora uma interface gráfica com o container Pane, localizado na aba Containers Insira um controle TextField e três controles Button Esses controles se encontram na aba Controls do SceneBuilder Observe a interface criada na figura a seguir: Controle TextField Controles Button Observe o passo-a-passo para criar essa interface gráfica

Com o projeto SceneBuilderExemplo aberto no Eclipse, Abra o arquivo ViewFXML.fxml pelo Scene Builder Acesse a aba Controller, abaixo da aba Hierarchy, no lado esquerdo do Scene Builder E informe a expressão controle.viewcontrole (pacote e nome da classe de controle) Salve as mudanças no Scene Builder Isso faz com que a aplicação relacione o arquivo fxml com a classe de controle correspondente

Código sem a classe de controle Código com a classe de controle Note os erros no fxml. Eles ocorrem porque a classe controle não possui a referência dos elementos e dos seus respectivos eventos Referência da classe de controle

Para eliminar os erros no fxml: Com o Scene Builder ainda aberto com o arquivo ViewFXML.fxml Acesse a opção O View / Show Sample Controller Skeleton 1 Será apresentada a janela Sample Skeleton For ViewFXML.fxml Controller Class 2 Clique no botão Copy dessa Janela para copiar o seu conteúdo para a memória Acesse o código da classe ViewControle.java, apagando todo o seu código e copiando o conteúdo da memória para essa classe Salve a classe ViewControle.java 1 2

Ajuste os erros clicando no x de um dos erros e importe a biblioteca informada ActionEvent(javafx.event) O respectivo import pode também ser efetuado com a combinação ctrl+shift+o

Agora, tanto a classe de controle quanto o arquivo fxml, não possuem erros Note os métodos correspondentes aos eventos de cada botão. Assim, por exemplo, se o botão btnincluir receber um clique do mouse, o evento btnincluironaction será chamado

Em seguida, ajuste o código do Método btnincluironaction Observe as alterações

A classe de controle ViewControle utiliza a classe Alert para apresentar uma caixa de dialogo de mensagens Trecho para apresentação de mensagens com a classe Alert

Observe a caixa de dialogo Alert em tempo de execução. title headertext Texto da mensagem

Para que se possa abrir a janela (ou visão) ViewFXML.fxml será necessário alterar o código da classe principal da aplicação, a qual deverá referenciar o arquivo ViewFXML.fxml para abrir a respectiva janela Novo código Código atual

Aplicação em tempo de execução Após clique do mouse sobre o botão Incluir

Outras formas de expressar o evento do botão btnincluir Segunda forma: Dentro do método initialize com expressão lambda: btnincluir.setonaction((event) -> { Alert alert; alert = new Alert(AlertType.INFORMATION,"Você Clicou no Botão Incluir",ButtonType.OK); alert.settitle("mensagem"); alert.setheadertext("informação"); alert.show(); }); sem expressão lambda: btnincluir.setonaction(new EventHandler<ActionEvent>(){ @Override public void handle(actionevent event){ //código } });

Outras formas de expressar o evento do botão btnincluir Terceira forma: Fora do método initialize: //Parte I private void handlebuttonaction(actionevent event) { // o botão foi clicado, faz algo } Dentro do método initialize //Parte II btnincluir.setonaction(this::handlebuttonaction);

Evento de foco com TextField Devem ser codificados dentro de initialize através do método focusedproperty() nomefuncionario.focusedproperty().addlistener(new javafx.beans.value.changelistener<boolean>() { @Override public void changed(observablevalue<? extends Boolean> arg0, Boolean velhovalor, Boolean novovalor) { if (!novovalor) { Alert alert; alert = new Alert(AlertType.INFORMATION,"Desfocado",ButtonType.OK); alert.settitle("mensagem"); alert.setheadertext("informação"); alert.show(); } else { System.out.println( FOCOU ); } } });

F I M