Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package sovellus;
- import javafx.application.Application;
- import javafx.geometry.Insets;
- import javafx.geometry.Pos;
- import javafx.scene.Scene;
- import javafx.scene.control.Button;
- import javafx.scene.control.Label;
- import javafx.scene.layout.BorderPane;
- import javafx.scene.layout.HBox;
- import javafx.scene.layout.StackPane;
- import javafx.stage.Stage;
- public class VitsiSovellus extends Application {
- @Override
- public void start(Stage ikkuna) throws Exception {
- // 1. Luodaan päätason asettelu
- BorderPane asettelu = new BorderPane();
- // 1.1. Luodaan päätason asettelun valikko
- HBox valikko = new HBox();
- valikko.setPadding(new Insets(20, 20, 20, 20));
- valikko.setSpacing(10);
- // 1.2. Luodaan valikon napit
- Button eka = new Button("Vitsi");
- Button toka = new Button("Vastaus");
- Button kol = new Button("Selitys");
- // 1.3. Lisätään napit valikkoon
- valikko.getChildren().addAll(eka, toka, kol);
- asettelu.setTop(valikko);
- // 2. Luodaan alinäkymät ja kytketään ne valikon nappeihin
- // 2.1. Luodaan alinäkymät -- tässä asettelut
- StackPane ekaAsettelu = luoNakyma("What do you call a bear with no teeth?");
- StackPane tokaAsettelu = luoNakyma("A gummy bear.");
- StackPane kolAsettelu = luoNakyma("Karhu - Täyttä olutta.");
- // 2.2. Liitetään alinäkymät nappeihin. Napin painaminen vaihtaa alinäkymää.
- eka.setOnAction((event) -> asettelu.setCenter(ekaAsettelu));
- toka.setOnAction((event) -> asettelu.setCenter(tokaAsettelu));
- kol.setOnAction((event) -> asettelu.setCenter(kolAsettelu));
- // 2.3. Näytetään aluksi ekaAsettelu
- asettelu.setCenter(ekaAsettelu);
- // 3. Luodaan päänäkymä ja asetetaan päätason asettelu siihen
- Scene nakyma = new Scene(asettelu);
- // 4. Näytetään sovellus
- ikkuna.setScene(nakyma);
- ikkuna.show();
- }
- private StackPane luoNakyma(String teksti) {
- StackPane asettelu = new StackPane();
- asettelu.setPrefSize(300, 180);
- asettelu.getChildren().add(new Label(teksti));
- asettelu.setAlignment(Pos.CENTER);
- return asettelu;
- }
- public static void main(String[] args) {
- launch(VitsiSovellus.class);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement