Abrir novas janelas é fundamental para programas
mais complexos que envolvem diversas aplicações.
Neste caso especialmente uma nova janela é aberta
mas sem duplicar os stages, isto é de extrema
necessidade, é como se a tela estivesse sendo limpa
para apresentação de novos conteúdos.
Teste isto agora mesmo e veja como funciona.
Veja abaixo imagens do programa em execução:
Veja abaixo o código do programa:
mais complexos que envolvem diversas aplicações.
Neste caso especialmente uma nova janela é aberta
mas sem duplicar os stages, isto é de extrema
necessidade, é como se a tela estivesse sendo limpa
para apresentação de novos conteúdos.
Teste isto agora mesmo e veja como funciona.
Veja abaixo imagens do programa em execução:
Veja abaixo o código do programa:
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
class Newclass {
static Button btn_2 = new Button ( "Sair" );
public static Node But_ton_2 ( Stage stage ) {
btn_2.setPrefWidth ( 50 );// Largura do botão
btn_2.setLayoutX ( 287 );// Posição do botão
coluna
btn_2.setPrefHeight ( 20 );// altura do botão
btn_2.setLayoutY ( 352 );// //Posição do botão
linha
btn_2.setOnAction ( new EventHandler < ActionEvent > ( ) {
@Override
public void handle ( ActionEvent event ) {
System.exit ( 0 );
}
} );
return btn_2;
}
static Canvas canvas = new Canvas ( 390, 300 );
static StackPane root = new StackPane ( );
static Scene sce_ne = new Scene ( root, 390, 300 );
static GraphicsContext ctx = canvas.getGraphicsContext2D
( );
public void start ( Stage stage ) {
stage.setTitle ( "SEGUNDA
JANELA" );
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 15 ) );
ctx.setFill ( Color.RED );
ctx.fillText ( "JAVAFX -
SEGUNDA JANELA", 100, 80 );
// Dando uns efeitos na moldura
root.setStyle ( "-fx-padding:
5;" + "-fx-border-style: solid inside;"
+ "-fx-border-width:
12;" + "-fx-border-insets: 5;"
+ "-fx-border-radius:
5;" + "-fx-border-color: blue;" );
But_ton_2 ( stage );
stage.setScene ( sce_ne );
root.getChildren ( ).addAll ( canvas, btn_2 );
stage.show ( );
}
}
////////////////////////////////////////////////////////////////////////////////
public class PROJETO extends Application {
static Button btn_1 = new Button ( "Ok" );
static Canvas canvas = new Canvas ( 390, 300 );
static StackPane root = new StackPane ( );
static Scene sce_ne = new Scene ( root, 390, 300 );
static GraphicsContext ctx = canvas.getGraphicsContext2D
( );
static Button b = new Button ( "Botão" );
static Newclass nova = new Newclass ( );
//
/////////////////////////////////////////////////////////////////////////
public static Node But_ton_1 ( Stage stage ) {
btn_1.setPrefWidth ( 50 );// Largura do botão
btn_1.setLayoutX ( 287 );// Posição do botão
coluna
btn_1.setPrefHeight ( 20 );// altura do botão
btn_1.setLayoutY ( 352 );// //Posição do botão
linha
btn_1.setOnAction ( new EventHandler < ActionEvent > ( ) {
@Override
public void handle ( ActionEvent event ) {
nova.start ( stage );
}
} );
return btn_1;
}
//
/////////////////////////////////////////////////////////////////////////
public void start ( Stage stage ) {
stage.setTitle ( "ABRINDO NOVAS
JANELAS" );
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 15 ) );
ctx.setFill ( Color.RED );
ctx.fillText ( "JAVAFX -
PRIMEIRA JANELA", 100, 80 );
But_ton_1 ( stage );
root.getChildren ( ).addAll ( b, canvas, btn_1 );
// Dando uns efeitos na moldura
root.setStyle ( "-fx-padding:
5;" + "-fx-border-style: solid inside;"
+ "-fx-border-width: 12;" + "-fx-border-insets:
5;"
+ "-fx-border-radius: 5;" + "-fx-border-color:
red;" );
stage.setScene ( sce_ne );
stage.show ( );
}
//
/////////////////////////////////////////////////////////////////////////
public static void main ( String [ ] args ) {
launch ( );
}
}
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.