segunda-feira, 12 de fevereiro de 2018

Javafx - extraindo códigos ascii de string

Aqui está um bom exemplo de como
extrair códigos ASCII de uma string.
Confira no vídeo e na imagem
o funcionamento do programa.


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

 
 
Veja abaixo o vídeo do programa:


 Veja abaixo o código do programa:


import javafx.application.Application;

import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.control.*;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.geometry.Insets;
import javafx.scene.control.Button;
import javafx.scene.input.KeyCode;

public class PROJETO extends Application {
     static String str = "";
     static String str1 = "";
     static String [ ] st = { "Um", "Dois", "Tres", "Quatro", "Cinco", "Seis",
         "Sete", "Oito", "Nove", "Dez", "Onze", "Doze", "Viva_Java" };
     static int i, x = 0;
     static Canvas canvas = new Canvas ( 600, 340 );
     static GraphicsContext ctx = canvas.getGraphicsContext2D ( );
     static Pane root = new Pane ( );
     static Scene scene = new Scene ( root, 600, 340 );
     static GridPane grid = new GridPane ( );
     static Button btn_1 = new Button ( "FECHAR" );
     // /////////////////////////////////////////////////////////////////////////
     public static void Informe ( ) {
         ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 13 ) );
         ctx.setFill ( Color.RED );
         ctx.fillText ( "Por: ", 200, 240 );
         ctx.setFill ( Color.BLUE );
         ctx.fillText ( "Samuel Lima", 240, 240 );
         ctx.setFill ( Color.BLACK );
         ctx.fillText ( "sa_sp10@hotmail.com", 200, 260 );
         ctx.setFill ( Color.RED );
         ctx.fillText ( " MUITO OBRIGADO", 250, 290 );
     }
     // /////////////////////////////////////////////////////////////////////////
     public static Node Sair ( ) {
         btn_1.setPrefWidth ( 100 );// Largura do botão
         btn_1.setLayoutX ( 267 );// Posição do botão coluna
         btn_1.setPrefHeight ( 20 );// altura do botão
         btn_1.setLayoutY ( 300 );// //Posição do botão linha
         btn_1.setStyle ( "-fx-padding: 1;" + "-fx-border-style: solid inside;"
                   + "-fx-border-width: 2;" + "-fx-border-insets: 1;"
                   + "-fx-border-radius: 1;" + "-fx-border-color: red;"
                   + "-fx-font-style: italic;" + "-fx-font-family: Consolas;" );
         btn_1.setOnKeyPressed ( e -> {
              if ( e.getCode ( ) == KeyCode.ENTER ) {
                   System.exit ( 0 );
              }
         } );
         return btn_1;
     }
     // /////////////////////////////////////////////////////////////////////////
     public static void Choice_box ( ) {
         ChoiceBox < String > cb = new ChoiceBox < String > (
                   FXCollections.observableArrayList ( st ) );
         cb.setStyle ( "-fx-padding: 5;" + "-fx-border-style: solid inside;"
                   + "-fx-border-width: 2;" + "-fx-border-insets: 5;"
                   + "-fx-border-radius: 5;" + "-fx-border-color: black;" );
         cb.getSelectionModel ( ).selectedIndexProperty ( )
         .addListener ( new ChangeListener < Number > ( ) {
              public void changed ( ObservableValue ov, Number value,
                        Number new_value ) {
                   str = st [ new_value.intValue ( ) ];
                   str1 = "";
                   // Coluna, linha, comprimento, altura
                   ctx.clearRect ( 170, 100, 400, 50 );
                   ctx.clearRect ( 170, 130, 500, 50 );
                   ctx.clearRect ( 170, 160, 500, 50 );
                   ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL,15 ) );                              
                   i = new_value.intValue ( );
                   ctx.setFill ( Color.BLACK );
                   ctx.fillText ( "Palavra => ", 190, 110 );
                   ctx.setFill ( Color.RED );
                   ctx.fillText ( " " + str, 270, 110 );
                   ctx.setFill ( Color.BLACK );
                   ctx.fillText ( "Abaixo os códigos ASCII extraído", 190, 140 );
                   ctx.setFill ( Color.RED );
                   for ( i = 0; i < str.length ( ); ++i ) {
                        char c = str.charAt ( i );
                        System.out.println ( ( int ) c );
                        str1 += ( int ) c + " ";
                   }            
                   ctx.setFill ( Color.RED );
                   ctx.fillText ( str1, 190, 170 );             
              }
         } );
         grid.add ( cb, 1, 1 );
     }
     // /////////////////////////////////////////////////////////////////////////
     public void start ( Stage stage ) {
         stage.setTitle ( "JAVAFX - EXTRAINDO CÓDIGOS ASCII DE STRING" );
         // Criando moldura e dando efeitos
         root.setStyle ( "-fx-padding: 5;" + "-fx-border-style: solid inside;"
                   + "-fx-border-width: 10;" + "-fx-border-insets: 5;"
                   + "-fx-border-radius: 5;" + "-fx-border-color: darkblue;" );
         ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 15 ) );
         ctx.setFill ( Color.RED );
         ctx.fillText ( "JAVAFX - EXTRAINDO CÓDIGOS ASCII DE STRING", 160, 50 );
         ctx.setFill ( Color.BLUE );
         ctx.fillText ( "Escolha uma palavra no choicebox", 190, 80 );
         Choice_box ( );
         Sair ( );
         Informe ( );
         grid.setPadding ( new Insets ( 15, 15, 60, 15 ) );
         root.getChildren ( ).addAll ( canvas, btn_1 );
         root.getChildren ( ).addAll ( grid );
         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.