Circle_MousePress_Drag1 |
|
Code
package javafxtemplate1; import javafx.application.Application; import javafx.event.EventHandler; import javafx.scene.input.MouseEvent; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.effect.Bloom; import javafx.scene.effect.BoxBlur; import javafx.scene.effect.DropShadow; import javafx.scene.effect.Glow; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.HBox; import javafx.scene.layout.StackPane; import javafx.scene.paint.Color; import javafx.scene.shape.Circle; import javafx.scene.shape.Ellipse; import javafx.scene.shape.Rectangle; import javafx.scene.text.Font; import javafx.scene.text.FontWeight; import javafx.scene.text.Text; import javafx.stage.Stage; //port ExternalClass1; /** * * @author Manas14 */ public class JavaFXTemplate1 extends Application { double orgSceneX, orgSceneY; double orgTranslateX, orgTranslateY; @Override public void start(Stage primaryStage) { final ImageView selectedImage = new ImageView(); Image image1 = new Image (JavaFXTemplate1.class.getResourceAsStream("banner2B.jpg")); selectedImage.setFitHeight(60); selectedImage.setFitWidth(100); selectedImage.setImage(image1); StackPane spane = new StackPane(); //Circle(double centerX, double centerY, double radius) Circle circle1 = new Circle(250,250, 90, Color.GREEN); Circle circle2 = new Circle(100,100,60); circle2.setStroke(Color.YELLOW); circle2.setFill(null); circle2.setStrokeWidth(3); circle2.setOnMousePressed(circleOnMousePressed); circle2.setOnMouseDragged(circleOnMouseDragged); //circle2.setArcWidth(25); //circle2.setArcHeight(25); //spane.setLayoutX(250);spane.setLayoutY(250); // setMinSize width, height spane.setMinSize(350,200); spane.setStyle("-fx-padding: 10;" +"-fx-background-color: RED;"+ "-fx-border-style: solid inside;" + "-fx-border-width: 4;" + "-fx-border-color: yellow;"); spane.getChildren().addAll(circle1,selectedImage, circle2); HBox root = new HBox( spane); root.setAlignment(Pos.CENTER); root.setSpacing(20); root.setStyle("-fx-padding: 10;" + "-fx-border-style: solid inside;" + "-fx-border-width: 4;" + "-fx-border-insets: 5;" + "-fx-border-radius: 5;" + "-fx-border-color: blue;"); Scene scene = new Scene(root, 400, 250); primaryStage.setScene(scene); primaryStage.setTitle("Applying Effects"); primaryStage.show(); } public static void main(String[] args) { launch(args); } EventHandler |
Runtime display:
Moving yellow circle:
|