Aqui está um exemplo de como usar o combox do
javafx para preencher um ArrayList.
O primeiro número escolhido será o tamanho
do ArrayList, e do segundo elemento em diante
até o tamanho serão inseridos na lista.
Veja abaixo uma imagem do programa em execução:
Veja abaixo o código do programa:
javafx para preencher um ArrayList.
O primeiro número escolhido será o tamanho
do ArrayList, e do segundo elemento em diante
até o tamanho serão inseridos na lista.
Veja abaixo uma imagem do programa em execução:
Veja abaixo o código do programa:
import java.util.ArrayList;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.control.Button;
import javafx.stage.Stage;
import javafx.scene.paint.Color;
import javafx.scene.layout.Pane;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.geometry.Insets;
import javafx.scene.control.*;
import javafx.scene.layout.GridPane;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
public class PROJETO extends Application {
static int k = 0, l = 0;
public static int TAM = 100, fim, tam = 0;
static Canvas canvas = new Canvas ( 620, 350 );
static GraphicsContext ctx = canvas.getGraphicsContext2D ( );
static Pane ro_ot = new Pane ( );
static Scene sce_ne = new Scene ( ro_ot, 620, 350 );
static Button btn_1 = new Button ( "TECLE
ENTER" );
@SuppressWarnings ( "rawtypes" )
static final ComboBox cb = new ComboBox ( );
static GridPane grid = new GridPane ( );
static Boolean y = false;
///////////////////////////////////////////////////////////////////////////
public static void Informe ( ) {
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 13 ) );
ctx.setFill ( Color.RED );
ctx.fillText ( "Por: ", 200, 242 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Samuel
Lima", 240, 242 );
ctx.setFill ( Color.BLACK );
ctx.fillText ( "sa_sp10@hotmail.com", 200, 260 );
ctx.setFill ( Color.RED );
ctx.fillText ( " MUITO
OBRIGADO", 250, 320 );
}
//
////////////////////////////////////////////////////////////////////////
public static int Inf_quant ( ArrayList < Integer > arr ) {
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 15 ) );
int i;
StringBuilder st = new StringBuilder ( );
k++;
ctx.clearRect ( 180, 70, 200, 20 );
ctx.clearRect ( 240, 70, 20, 20 );
ctx.clearRect ( 260, 70, 200, 20 );
ctx.clearRect ( 180, 70, 400, 20 );
ctx.clearRect ( 180, 90, 400, 20 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Insira o
", 190, 80 );
ctx.setFill ( Color.RED );
ctx.fillText ( " " + ( k ) + " º", 240, 80 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "número", 275, 80 );
arr.add ( fim );
st.append ( arr );
if ( k == tam + 2 ) {
st = new StringBuilder ( );
ctx.clearRect ( 180, 70, 400, 20 );
for ( i = 1; i < tam + 2; i++ ) {
if ( arr.get ( i ) != ' ' )
if ( arr.get ( i ) % 10 == 0 )
st.append ("\n");
if ( arr.get ( i ) >= 0 && arr.get ( i ) <= 9 )
st.append ( "0" );
System.out.printf ( "%3d", arr.get ( i ) );
st.append ( arr.get ( i ) + "\t");
}
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Veja abaixo o
ArrayList preenchido", 200, 80 );
ctx.setFill ( Color.RED );
ctx.fillText ( " " + st, 160, 110 );
Informe ( );
}
return 0;
}
//
////////////////////////////////////////////////////////////////////////
@SuppressWarnings ( "unchecked" )
public static int Array_1 ( ArrayList < Integer > arr ) {
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;" );
int i = 0;
do {
i++;
//total de linhas visíveis
cb.setVisibleRowCount ( 10 );
cb.getItems ( ).addAll ( i );
} while ( i <= TAM );
cb.getSelectionModel ( ).selectedIndexProperty
( )
.addListener ( new ChangeListener < Number > ( ) {
@SuppressWarnings ( "rawtypes" )
public void changed ( ObservableValue ov, Number value,
Number new_value ) {
if ( y == false ) {
tam = new_value.intValue ( );
y = true;
}
if ( y == true ) {
fim = new_value.intValue ( );
fim = fim + 1;
}
Inf_quant ( arr );
}
} );
grid.add ( cb, 1, 1 );
return 0;
}
//
////////////////////////////////////////////////////////////////////////
public void start ( Stage stage ) {
ArrayList < Integer > arr = new ArrayList < > ( );
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 15 ) );
stage.setTitle ( "JAVAFX -
PREENCHENDO UM ARRAYLIST COM COMBOX" );
//Criando moldura e dando efeitos
ro_ot.setStyle ( "-fx-padding:
5;" + "-fx-border-style: solid inside;"
+ "-fx-border-width:
12;" + "-fx-border-insets: 5;"
+ "-fx-border-radius:
5;" + "-fx-border-color: black;"
+ "-fx-background:
lightblue;");
ctx.setFill ( Color.RED );
ctx.fillText ( "PREENCHENDO
UM ARRAYLIST COM COMBOX", 150, 50 );
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 15 ) );
ctx.setFill ( Color.BLACK );
ctx.fillText ( "Escolha no
combox o total de números", 190, 80 );
ctx.setFill ( Color.BLACK );
ctx.fillText ( "que deseja
inserir no ArrayList", 190, 100 );
Array_1 ( arr );
grid.setPadding ( new Insets ( 15, 15, 60, 15 ) );
ro_ot.getChildren ( ).addAll ( canvas );
ro_ot.getChildren ( ).addAll ( grid );
stage.setScene ( sce_ne );
stage.show ( );
}
//
////////////////////////////////////////////////////////////////////////
public static void main ( String [ ] args ) {
Application.launch ( args );
}
}
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.