写一个java代码,实现页面图片滑动效果,鼠标滑动的登陆页面
时间: 2024-03-05 12:47:26 浏览: 84
javascript图片滑动效果实现
好的,下面是一个简单的 JavaFX 示例代码,实现页面图片滑动效果和鼠标滑动登陆页面:
```java
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.image.ImageView;
import javafx.scene.layout.Pane;
import javafx.stage.Stage;
public class ImageSlider extends Application {
private static final int WINDOW_WIDTH = 800;
private static final int WINDOW_HEIGHT = 600;
private static final int IMAGE_WIDTH = 400;
private static final int IMAGE_HEIGHT = 300;
private ImageView imageView1;
private ImageView imageView2;
private double lastY;
@Override
public void start(Stage primaryStage) throws Exception {
// 创建两个 ImageView,并设置它们的位置
imageView1 = new ImageView("image1.jpg");
imageView1.setX(0);
imageView1.setY(0);
imageView2 = new ImageView("image2.jpg");
imageView2.setX(0);
imageView2.setY(IMAGE_HEIGHT);
// 创建一个 Pane,将两个 ImageView 添加到 Pane 中
Pane pane = new Pane();
pane.getChildren().addAll(imageView1, imageView2);
// 创建一个 Scene,将 Pane 添加到 Scene 中
Scene scene = new Scene(pane, WINDOW_WIDTH, WINDOW_HEIGHT);
// 监听鼠标滚轮事件,在滚动时移动两个 ImageView 的位置
scene.setOnScroll(event -> {
double deltaY = event.getDeltaY();
double translationY = deltaY > 0 ? IMAGE_HEIGHT : -IMAGE_HEIGHT;
imageView1.setTranslateY(imageView1.getTranslateY() + translationY);
imageView2.setTranslateY(imageView2.getTranslateY() + translationY);
});
// 监听鼠标拖拽事件,在拖拽时移动两个 ImageView 的位置
scene.setOnMousePressed(event -> lastY = event.getSceneY());
scene.setOnMouseDragged(event -> {
double deltaY = event.getSceneY() - lastY;
imageView1.setTranslateY(imageView1.getTranslateY() + deltaY);
imageView2.setTranslateY(imageView2.getTranslateY() + deltaY);
lastY = event.getSceneY();
});
// 设置 primaryStage 的 Scene,并显示 primaryStage
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
```
在代码中,我们创建了两个 `ImageView`,分别用来显示两张图片。我们监听了鼠标滚轮事件和鼠标拖拽事件,根据鼠标的操作来移动这两个 `ImageView` 的位置,从而实现了页面图片滑动效果。
你可以将这个代码中的图片路径替换成你自己的图片路径,实现自己的图片滑动效果。同样,你也可以将代码中的图片换成登陆页面的内容。
阅读全文