Você está aqui: JavaFX ::: Pacote javafx.scene.image ::: ImageView (Classe ImageView)

Como usar a classe ImageView do JavaFX em suas aplicações

Quantidade de visualizações: 98 vezes
Em várias situações nós gostaríamos de exibir imagens como parte da interface do usuário de nossas aplicações JavaFX. Para isso nós podemos usar um controle ImageView, do pacote javafx.scene.image. Veja a posição dessa classe na hierarquia de classes do JavaFX:

java.lang.Object
  javafx.scene.Node
    javafx.scene.image.ImageView

A classe ImageView implementa as interfaces Styleable e EventTarget.

Veja um trecho de código completo no qual nós carregamos uma imagem JPG em uma imagem Image, do pacote javafx.scene.image, e fornecemos esse objeto Image para o construtor da classe ImageView:

package estudosjavafx;
   
import java.io.FileInputStream;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
   
public class EstudosJavaFX extends Application {
  public static void main(String[] args){
    launch(args);
  }
   
  @Override
  public void start(Stage primaryStage) throws Exception{
    // vamos indicar o caminho e nome da imagem a ser exibida
    FileInputStream arquivo = new FileInputStream("C:\\estudos_java\\lago.jpg");
    
    // agora criarmos um objeto da classe Image
    Image imagem = new Image(arquivo);
    
    // construimos o ImageView
    ImageView imageView = new ImageView(imagem);
    
    // colocamos o ImageView em um gerenciador de layout HBOX
    HBox hBox = new HBox(imageView);

    // criamos a cena e fornecemos o layout a ela
    Scene scene = new Scene(hBox);
    
    // vamos definir o título da aplicação
    primaryStage.setTitle("A classe ImageView do JavaFX");
    
    // adicionamos a cena ao palco principal
    primaryStage.setScene(scene);
    // e mostramos o palco
    primaryStage.show();
  }
}

Ao executar esta aplicação JavaFX nós teremos o seguinte resultado:




JavaFX ::: Pacote javafx.scene.control ::: TextField (Classe TextField)

Como usar caixas de texto TextField em suas aplicações JavaFX

Quantidade de visualizações: 97 vezes
Um objeto da classe TextField, do pacote javafx.scene.control, e disponível no JavaFX desde a versão 2.0, é usado para obter dados dos usuários de nossas aplicações. Este controle visual possibilita a digitação de dados (texto) no formato de uma linha apenas.

Veja a posição desta classe na hierarquia de classes do JavaFX:

java.lang.Object
 javafx.scene.Node
  javafx.scene.Parent
   javafx.scene.layout.Region
    javafx.scene.control.Control
     javafx.scene.control.TextInputControl
      javafx.scene.control.TextField

A classe TextField implementa as Styleable, EventTarget e Skinnable e sua sub-classe direta é PasswordField.

Veja o código completo para uma aplicação JavaFX que possui um Label, um TextField e um Button dispostos em um gerenciador de layout HBox:

package estudosjavafx;
   
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
   
public class EstudosJavaFX extends Application {
  public static void main(String[] args){
    launch(args);
  }
   
  @Override
  public void start(Stage primaryStage){
    // vamos criar um rótulo, um botão e uma
    // caixa de texto
    Label label = new Label("Seu nome:");
    // vamos deixar o texto do Label em negrito
    label.setStyle("-fx-font-weight: bold;");
    // vamos aumentar o tamanho da fonte
    label.setStyle("-fx-font-size: 150%;");
    TextField nomeTxt = new TextField();
    Button btn = new Button("Enviar");
    
    // agora criamos um laytou HBox e colocamos
    // os componentes nele
    HBox hBox = new HBox();
    hBox.getChildren().add(label);
    hBox.getChildren().add(nomeTxt);
    hBox.getChildren().add(btn);
       
    // vamos definir o espaço interno do HBox
    hBox.setPadding(new Insets(10, 10, 10, 10));
    
    // vamos definir o espaço entre os 
    // componentes do HBox
    hBox.setSpacing(10);
      
    // criamos a cena e fornecemos o layout a ela
    // e definimos a largura e altura da cena
    Scene scene = new Scene(hBox, 400, 300);
    
    // adicionamos a cena ao palco principal
    primaryStage.setScene(scene);
    // e mostramos o palco
    primaryStage.show();
  }
}

Ao executar este exemplo JavaFX nós teremos o seguinte resultado:




JavaFX ::: Pacote javafx.scene.layout (Package javafx.scene.layout) ::: HBox (Classe HBox)

Como definir o espaço interno do HBox do JavaFX usando o método setPadding()

Quantidade de visualizações: 80 vezes
Em algumas situações nós precisamos definir o espaço interno, ou seja, o padding, do gerenciador de layout HBox. Para isso nós podemos usar o método setPadding() e fornecer a ele um objeto da classe javafx.geometry.Insets. Este método é herdado da classe javafx.scene.layout.Region.

Lembre-se de que a função setPadding() define o espaço interno do VBox, ou seja, o espaço que deverá existir entre suas margens e os componentes contidos nele.

Veja um trecho de código JavaFX no qual temos um gerenciador de layout HBox e três botões:

package estudosjavafx;
 
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
 
public class EstudosJavaFX extends Application {
  public static void main(String[] args){
    launch(args);
  }
 
  @Override
  public void start(Stage primaryStage){
    // vamos criar três botões
    Button btn1 = new Button("Botão 1");
    Button btn2 = new Button("Botão 2");
    Button btn3 = new Button("Botão 3");
     
    // agora criamos um laytou HBox e colocamos
    // os três botões nele
    HBox hBox = new HBox();
    hBox.getChildren().add(btn1);
    hBox.getChildren().add(btn2);
    hBox.getChildren().add(btn3);
     
    // vamos definir o espaço interno do HBox usando
    // um Inserts (top, direita, baixo, esquerda)
    hBox.setPadding(new Insets(20, 20, 20, 20));
    
    // criamos a cena e fornecemos o layout a ela
    // e definimos a largura e altura da cena
    Scene scene = new Scene(hBox, 400, 300);
     
    // adicionamos a cena ao palco principal
    primaryStage.setScene(scene);
    // e mostramos o palco
    primaryStage.show();
  }
}

Execute este código, experimente alterar os valores do objeto Insets fornecido ao método setPadding e veja os resultados obtidos.


Veja mais Dicas e truques de JavaFX

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Elétrica pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 15 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: C#
3º lugar: PHP
4º lugar: Delphi
5º lugar: Python
6º lugar: JavaScript
7º lugar: C
8º lugar: C++
9º lugar: VB.NET
10º lugar: JSP (Java Server Pages)



© 2021 Arquivo de Códigos - Todos os direitos reservados | Versión en Español | Versão em Português