Adición de código [App, Diapositiva, Presentación y Título]

This commit is contained in:
AngelSuarez03 2024-03-20 08:30:37 -06:00
parent 4c23e9301f
commit 7e7c8f29eb
4 changed files with 130 additions and 11 deletions

View File

@ -12,15 +12,44 @@ import javafx.stage.Stage;
*/ */
public class App extends Application { public class App extends Application {
@Override // Diapositiva d1
public void start(Stage stage) { Titulo t1 = new Titulo("Titulo 1", "Subtitulo 1");
var javaVersion = SystemInfo.javaVersion(); NC_CuadroTexto ct = new NC_CuadroTexto();
var javafxVersion = SystemInfo.javafxVersion(); ct.agregaTexto("Sentencia 1");
ct.agregaTexto("Sentencia 2");
ct.agregaTexto("Sentencia 3");
ct.agregaTexto("Sentencia 4");
Contenido c1 = new Contenido();
c1.agregaElemento(ct);
ModeloDiapositiva md1 = new ModeloDiapositiva(t1, c1);
Diapositiva d1 = new Diapositiva(md1);
var label = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + "."); // Diapositiva d2
var scene = new Scene(new StackPane(label), 640, 480); ConstructorGraficaBarras cgb = new ConstructorGraficaBarras("Ventas anuales de pasteles", "Año", "Ventas");
stage.setScene(scene); cgb.agregaSerie("2016");
stage.show(); cgb.agregaBarraSerie("2016", "Milky", 5200);
cgb.agregaBarraSerie("2016", "Zanahoria", 2200);
cgb.agregaBarraSerie("2016", "Mostachón", 4800);
cgb.agregaSerie("2017");
cgb.agregaBarraSerie("2017", "Milky", 5400);
cgb.agregaBarraSerie("2017", "Zanahoria", 2500);
cgb.agregaBarraSerie("2017", "Mostachón", 4700);
Contenido c2 = new Contenido();
c2.agregaElemento(cgb.generaGraficaBarras());
Titulo t2 = new Titulo("Titulo 2", "Subtitulo 2");
ModeloDiapositiva md2 = new ModeloDiapositiva(t2, c2);
Diapositiva d2 = new Diapositiva(md2);
Presentacion p = new Presentacion(stage);
p.agregarDiapositiva(d1);
p.agregarDiapositiva(d2);
p.mostrar();
} }
public static void main(String[] args) { public static void main(String[] args) {

View File

@ -9,5 +9,7 @@ package com.potrillos.presentacionjfx;
* @author USER * @author USER
*/ */
public class Diapositiva { public class Diapositiva {
public Diapositiva(ModeloDiapositiva md) {
super(md,800,600);
}
} }

View File

@ -9,5 +9,70 @@ package com.potrillos.presentacionjfx;
* @author USER * @author USER
*/ */
public class Presentación { public class Presentación {
private Stage controlDiapositivas;
private Stage ventanaDiapositivas;
private List <Diapositiva> diapositivas;
private int diapositivaActual;
public Presentacion(Stage primaryStage) {
controlDiapositivas = primaryStage;
ventanaDiapositivas = new Stage();
diapositivas = new ArrayList<>();
diapositivaActual = 0;
Button btnAtras = new Button("<Atrás>");
btnAtras.setOnAction(
event -> {
if(diapositivaActual > 0) {
diapositivaActual --;
ventanaDiapositivas.setScene(diapositivas.get(diapositivaActual));
}
}
);
Button btnAdelante = new Button("<Adelante>");
btnAdelante.setOnAction(
event -> {
int limiteSuperior = diapositivas.size() - 1;
if(diapositivaActual < limiteSuperior) {
diapositivaActual++;
ventanaDiapositivas.setScene(diapositivas.get(diapositivaActual));
}
}
);
Button btnDetener = new Button("<Detener>");
btnDetener.setOnAction(
event -> {
System.exit(0);
}
);
primaryStage.setOnCloseRequest(
event -> System.exit(0)
);
HBox hboxPane = new HBox(btnAtras, btnDetener, btnAdelante);
hboxPane.setSpacing(20);
Scene control = new Scene(hboxPane);
controlDiapositivas.setTitle("Presentador FX");
controlDiapositivas.setResizable(false);
controlDiapositivas.setScene(control);
}
public void mostrar() {
controlDiapositivas.setAlwaysOnTop(true);
controlDiapositivas.show();
if(this.diapositivas.size()>0) {
ventanaDiapositivas.setScene(diapositivas.get(0));
ventanaDiapositivas.show();
}
} }
public void agregarDiapositiva(Diapositiva diapositiva) {
diapositivas.add(diapositiva);
}
}

View File

@ -9,5 +9,28 @@ package com.potrillos.presentacionjfx;
* @author USER * @author USER
*/ */
public class Titulo { public class Titulo {
private NC_Texto tTitulo;
private NC_Texto tSubtitulo;
public Titulo() {
super();
this.setMinSize(800, 100);
tTitulo= new NC_Texto();
tSubtitulo = new NC_Texto();
this.getChildren().add(tTitulo);
this.getChildren().add(tSubtitulo);
this.setTextAlignment(TextAlignment.CENTER);
this.setStyle("-fx-background-color: #800000;");
}
public Titulo(String titulo, String subtitulo) {
this();
this.setTitulos(titulo, subtitulo);
}
public void setTitulos(String titulo, String subtitulo) {
tTitulo.setTexto(titulo, 32, Color.WHITE);
tSubtitulo.setTexto("\n"+subtitulo, 28, Color.WHITE);
} }
}