Advertisement
Guest User

Untitled

a guest
Mar 29th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.38 KB | None | 0 0
  1. package Crawler;
  2.  
  3.  
  4. import java.io.IOException;
  5. import javafx.beans.binding.BooleanBinding;
  6. import javafx.beans.property.BooleanProperty;
  7. import javafx.beans.property.SimpleBooleanProperty;
  8. import javafx.beans.value.ChangeListener;
  9. import javafx.beans.value.ObservableValue;
  10. import javafx.concurrent.Task;
  11. import javafx.event.EventHandler;
  12. import javafx.scene.Scene;
  13. import javafx.scene.control.MenuBar;
  14. import javafx.scene.control.TabPane;
  15. import javafx.scene.input.KeyCode;
  16. import javafx.scene.input.KeyEvent;
  17. import javafx.scene.layout.AnchorPane;
  18. import javafx.scene.paint.Color;
  19. import javafx.stage.Stage;
  20.  
  21.  
  22. public class MyStage {
  23. private static Stage window;
  24. private static Scene scene1;
  25. private static AnchorPane root;
  26.  
  27. //private static Button button;
  28.  
  29. public static void goApp(Stage primaryStage) throws IOException {
  30. final BooleanProperty spacePressed = new SimpleBooleanProperty(false);
  31. final BooleanProperty rightPressed = new SimpleBooleanProperty(false);
  32. final BooleanBinding spaceAndRightPressed = spacePressed.and(rightPressed);
  33. window = primaryStage;
  34. window.setTitle("CRAWLER 2.0");
  35. window.setOnCloseRequest(e -> {
  36. e.consume();
  37. closeProgram();
  38. });
  39.  
  40. root = new AnchorPane();
  41.  
  42. MenuBar menuBar = CustomMenuBar.display();
  43. TabPane tabPane = CustomTabPane.display();
  44. AnchorPane.setTopAnchor(menuBar, 5.0);
  45. AnchorPane.setTopAnchor(tabPane, 30.0);
  46. AnchorPane.setBottomAnchor(tabPane, 20.0);
  47.  
  48. menuBar.prefWidthProperty().bind(window.widthProperty());
  49. tabPane.prefWidthProperty().bind(window.widthProperty());
  50. root.getChildren().addAll(menuBar, tabPane);
  51.  
  52. scene1 = new Scene(root, 600, 480);
  53. scene1.setFill(Color.OLDLACE);
  54.  
  55.  
  56. // How to respond to both keys pressed together:
  57. spaceAndRightPressed.addListener(new ChangeListener<Boolean>() {
  58. @Override
  59. public void changed(ObservableValue<? extends Boolean> observable, Boolean werePressed, Boolean arePressed) {
  60. closeProgram();
  61. }
  62. });
  63.  
  64.  
  65. scene1.setOnKeyPressed(new EventHandler<KeyEvent>() {
  66. @Override
  67. public void handle(KeyEvent ke) {
  68. if (ke.getCode() == KeyCode.CONTROL) {
  69. spacePressed.set(true);
  70. } else if (ke.getCode() == KeyCode.C) {
  71. rightPressed.set(true);
  72. }
  73. }
  74. });
  75.  
  76. scene1.setOnKeyReleased(new EventHandler<KeyEvent>() {
  77. @Override
  78. public void handle(KeyEvent ke) {
  79. if (ke.getCode() == KeyCode.CONTROL) {
  80. spacePressed.set(false);
  81. } else if (ke.getCode() == KeyCode.C) {
  82. rightPressed.set(false);
  83. }
  84. }
  85. });
  86.  
  87. Thread crawler = new Thread(new Crawler());
  88. crawler.start();
  89. window.setScene(scene1);
  90. window.show();
  91.  
  92. }
  93.  
  94.  
  95. public static void closeProgram(){
  96. boolean answer = ConfirmBox.display("Closing window", "Sure you want to exit?");
  97. if(answer)
  98. window.close();
  99. }
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement