quarta-feira, 8 de agosto de 2018

JavaFx - estilos com css

Cascading Style Sheets (css),
que traduzido para o português:
"Folhas de estilo em cascata".
Trata-se de uma poderosa ferramenta
usada para aplicar estilos (aparência)
em páginas da internet que adotam para o seu

desenvolvimento linguagens de marcação como:
 (XML, HTML e XHTML). 
O CSS define como serão exibidos os elementos contidos
no código de uma página da internet e sua maior vantagem 
é efetuar a separação entre o formato e o conteúdo de um documento.
Agora quero parabenizar mais uma vez
os envolvidos em java assim como eu,
vou mais longe ainda e chamo-lhes de
príncipes da programação.
Mas nós não seríamos nada se não fosse
as poderosas APIS de interfaces gráficas
do java, na qual a mais destacada é esta
que lhes apresento sempre, (JavaFX),
a rainha das APIS, por favor, abaixem
suas cabeças e se rendam a sua alteza.
Poder usar css e html no Java, através
do JavaFX nos enche de orgulho e poder.
Neste exemplo estamos usando vários
efeitos com css, inclusive estamos
abrindo uma imagem para o fundo do programa.


Veja abaixo uma imagem do programa em execução:



Veja abaixo o código do programa:


import javafx.application.Application;

import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.layout.GridPane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Ellipse;
import javafx.scene.shape.Polygon;
import javafx.scene.shape.Rectangle;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class PROJETO extends Application {
     GridPane grid = new GridPane ( );
     Scene scene = new Scene ( grid, 600, 320 );
     Text t_1 = new Text ( "JAVAFX - ESTILOS COM CSS" );
     Text t_2 = new Text ( );
    Canvas canvas = new Canvas ( 600, 320 );
   GraphicsContext ctx = canvas.getGraphicsContext2D ( );
     // /////////////////////////////////////////////////////////////////////////
     public void Informe ( ) {      
         t_2.setX ( 200 );
         t_2.setY ( 290 );
         t_2.setFill ( Color.BLACK );
         t_2.setText ( "Por: Samuel Lima\n"
                   + "sa_sp10@hotmail.com\n"
                   +"  MUITO OBRIGADO");
         //Colocando efeito na fonte
         t_2.setStyle ( "-fx-font-style: italic;"
                   + "-fx-font-size: 15px;"
                   + "-fx-font-weight: bold;"
                   + " -fx-effect: innershadow( three-pass-box ,"
                   + " rgba(0,0,0,0.7) , 6, 0.0 , 0 , 4 );");
         t_2.setLayoutX ( 130 );
         t_2.setLayoutY ( 30 );
         t_2.setTranslateX ( 200 );
         t_2.setTranslateY ( 200 );
         grid.add ( t_2, 0, 0, 1, 1 );
     }
     // /////////////////////////////////////////////////////////////////////////
     public void start ( Stage stage ) {
         stage.setTitle ( "JAVAFX - ESTILOS COM CSS" );    
         t_1.setFill ( Color.RED );
         grid.setAlignment ( Pos.TOP_CENTER );
         t_1.setLayoutY ( 30 );
         t_1.setTranslateY ( -20 );
         t_1.setId ( "JAVAFX - ESTILOS COM CSS" );
         grid.add ( t_1, 0, 0, 1, 1 );
         //Colocando efeito na fonte
         t_1.setStyle ( "-fx-font-style: italic;"
                   + "-fx-font-size: 40px;"
                   + "-fx-font-weight: bold;"
                   + " -fx-effect: innershadow( three-pass-box ,"
                   + " rgba(0,0,0,0.7) , 6, 0.0 , 0 , 4 );");
         //Criando uma moldura com .css
         //Criando moldura e dando efeitos
         grid.setStyle ( "-fx-padding: 5;"
                   + "-fx-border-style: solid inside;"
                   + "-fx-border-width: 10;"
                   + "-fx-border-insets: 5;"
                   + "-fx-border-radius: 5;"
                   + "-fx-border-color: black;"
                   + "-fx-background-image: url(Win_7.png)");  
         Rectangle rect = new Rectangle ( 80, 80 );
         rect.setLayoutX ( 90 );
         rect.setLayoutY ( 80 );
         rect.setTranslateX ( 40 );
         rect.setTranslateY ( 120 );
         //Criando uma moldura em torno do retângulo
         rect.setStyle ("-fx-fill: red;"     
                   + " -fx-stroke: green;"
                   + " -fx-stroke-width: 10;"
                   + " -fx-stroke-dash-array: 12 2 4 2;"
                   + " -fx-stroke-dash-offset: 6;"
                   + "-fx-stroke-line-cap: butt;");
         grid.add ( rect, 0, 0, 1, 1 );
         // /////////////////////////////////////////////////////////////////////
         Circle circle = new Circle ( 80, 80, 40 );
         circle.setLayoutX ( 90 );
         circle.setLayoutY ( 80 );
         circle.setTranslateX ( 160 );
         circle.setTranslateY ( 120 );
         //Criando uma moldura em torno do retângulo
         circle.setStyle ("-fx-fill: white;"      
                   + " -fx-stroke: green;"
                   + " -fx-stroke-width: 10;"
                   + " -fx-stroke-dash-array: 12 2 4 2;"
                   + " -fx-stroke-dash-offset: 6;"
                   + "-fx-stroke-line-cap: butt;");
         grid.add ( circle, 0, 0, 1, 1 );
         // /////////////////////////////////////////////////////////////////////
         Polygon triangulo = new Polygon ( );
         triangulo.getPoints ( ).addAll (
                   new Double [ ] { 45.0, 10.0, 10.0, 80.0, 80.0, 80.0 } );
         //Localização - coluna
         triangulo.setLayoutX ( 90 );
         //Localização - linha
         triangulo.setLayoutY ( 80 );
         triangulo.setTranslateX ( 280 );
         triangulo.setTranslateY ( 120 );
         //Criando uma moldura em torno do retângulo
         triangulo.setStyle ("-fx-fill: pink;"         
                   + " -fx-stroke: green;"
                   + " -fx-stroke-width: 4;"
                   + " -fx-stroke-dash-array: 12 2 4 2;"
                   + " -fx-stroke-dash-offset: 6;"
                   + "-fx-stroke-line-cap: butt;");
         grid.add ( triangulo, 0, 0, 1, 1 );
         // /////////////////////////////////////////////////////////////////////
         Ellipse elipse = new Ellipse ( );
         elipse.setCenterX ( 50.0f );
         elipse.setCenterY ( 50.0f );
         elipse.setRadiusX ( 50.0f );
         elipse.setRadiusY ( 25.0f );
         //Localização - coluna
         elipse .setLayoutX ( 90 );
         //Localização - linha
         elipse .setLayoutY ( 80 );
         elipse .setTranslateX ( 400 );
         elipse .setTranslateY ( 120 );
         //Criando uma moldura em torno do retângulo
         elipse.setStyle ("-fx-fill: yellow;"     
                   + " -fx-stroke: green;"
                   + " -fx-stroke-width: 6;"
                   + " -fx-stroke-dash-array: 12 2 4 2;"
                   + " -fx-stroke-dash-offset: 6;"
                   + "-fx-stroke-line-cap: butt;");
         grid.add ( elipse , 0, 0, 1, 1 );
         Informe ( );
         // /////////////////////////////////////////////////////////////////////
         stage.setScene ( scene );
         stage.show ( );
     }
     // /////////////////////////////////////////////////////////////////////////
     public static void main ( String [ ] args ) {
         launch ( args );
     }
}
 

Nenhum comentário:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.