Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package formfxexample;
  7.  
  8. import javafx.application.Application;
  9. import javafx.event.ActionEvent;
  10. import javafx.geometry.Pos;
  11. import javafx.scene.Scene;
  12. import javafx.scene.control.Button;
  13. import javafx.scene.layout.HBox;
  14. import javafx.scene.layout.StackPane;
  15. import javafx.scene.paint.Color;
  16. import javafx.scene.text.Font;
  17. import javafx.scene.text.FontWeight;
  18. import javafx.scene.text.Text;
  19. import javafx.stage.Stage;
  20.  
  21. /**
  22.  *
  23.  * @author arief
  24.  */
  25. public class CSSExample extends Application{
  26. String nameFont = "Comic Sans MS",greeting;
  27.  
  28.     @Override
  29.     public void start(Stage primaryStage) throws Exception {
  30.         //Memanggil class lain,
  31.         //agar class tersebut dapat diberikan perintah tertentu
  32.         FormFXExample formfx = new FormFXExample();
  33.        
  34.         //Menghentikan penampilan window form login awal
  35.         formfx.stop();
  36.        
  37.         //Membuat komponen Text
  38.         final Text txtTarget = new Text();
  39.         txtTarget.setId("teks");
  40.        
  41.         Button cetak = new Button("Print");
  42.         cetak.setFont(Font.font(nameFont));
  43.         cetak.setOnAction((ActionEvent event) -> {
  44.            
  45.         //Mengisi komponen Text dengan tulisan "CSS Example Window"
  46.         txtTarget.setText("HELLO "+greeting.toUpperCase()+" !");
  47.         txtTarget.setFont(Font.font(nameFont,FontWeight.NORMAL,32));
  48.            
  49.         //Memberikan warna pada huruf atau tulisan yang ada pada komponen teks
  50.         txtTarget.setFill(Color.FIREBRICK);
  51.         });
  52.        
  53.         Button balik = new Button("Back");
  54.         balik.setFont(Font.font(nameFont));
  55.         balik.setOnAction((ActionEvent event) -> {
  56.             //Menghentikan penampilan window CSS Example
  57.             primaryStage.close();
  58.            
  59.             //Menampilkan form login awal
  60.             formfx.start(primaryStage);
  61.         });
  62.        
  63.         //Membuat Button dengan teks "close"
  64.         Button cls = new Button("Close");
  65.        
  66.         //Menetapkan huruf yang dipakai pada teks button.
  67.         cls.setFont(Font.font(nameFont));
  68.        
  69.         //Membuat Aksi untuk Button
  70.         cls.setOnAction((ActionEvent event)->{
  71.             //Menutup window
  72.            primaryStage.close();
  73.         });
  74.        
  75.         //Membuat Horizontal Box dengan jarak antar komponen sebesar 10
  76.         HBox hbox = new HBox(10);
  77.        
  78.         //Memosisikan HBox di bagian bawah-tengah
  79.         hbox.setAlignment(Pos.BOTTOM_CENTER);
  80.        
  81.         //Mengisi HBox dengan komponen lain, berupa Button
  82.         //Bisa juga menggunakan hbox.getChildren().addAll(nama komponen-komponen)
  83.         hbox.getChildren().add(cetak);
  84.         hbox.getChildren().add(balik);
  85.         hbox.getChildren().add(cls);
  86.        
  87.         //Membuat layout StackPane
  88.         StackPane pane = new StackPane();
  89.        
  90.         //Untuk amannya ketika edit interface dengan CSS
  91.         //lebih baik menggunakan ID untuk setiap komponen
  92.         pane.setId("layout"); //ID untuk komponen layout StackPane
  93.        
  94.         //Menambahkan komponen Text dan Horizontal Box pada layout StackPane
  95.         //bisa juga menggunakan pane.getChildren().addAll(nama komponen-komponen)
  96.         pane.getChildren().addAll(txtTarget);
  97.         pane.getChildren().add(hbox);
  98.        
  99.         //Menempatkan layout pada windo ukuran x=300,y=250
  100.         Scene scene = new Scene(pane, 300, 250);
  101.         scene.getStylesheets().add(CSSExample.class.getResource("asset/Login.css").toExternalForm());
  102.         primaryStage.setTitle("CSS Example");
  103.         primaryStage.setScene(scene);
  104.        
  105.         primaryStage.setX(484);
  106.         primaryStage.setY(256);
  107.         primaryStage.show();
  108.     }
  109.    
  110. }