博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaFX ImageView
阅读量:6413 次
发布时间:2019-06-23

本文共 6888 字,大约阅读时间需要 22 分钟。

 

例子1:显示4个狗头。正常显示左上角、右下角的狗头;右上角的狗头旋转180°,并设置了透明度;左下角的狗头旋转90°,也设置了透明度。

1 import javafx.application.Application; 2 import javafx.geometry.Insets; 3 import javafx.scene.Scene; 4 import javafx.scene.image.Image; 5 import javafx.scene.image.ImageView; 6 import javafx.scene.layout.GridPane; 7 import javafx.stage.Stage; 8  9 public class Main extends Application {10 11     public static void main(String[] args) {12         launch(args);13     }14 15     @Override16     public void start(Stage primaryStage) throws Exception {17 18         // Create a pane to hold the images19         GridPane pane = new GridPane();20         pane.setStyle("-fx-border-color: green;");21         pane.setPadding(new Insets(10));22         pane.setHgap(10);            // The width of the horizontal gaps between columns.23         pane.setVgap(10);            // The height of the vertical gaps between rows.24         25         // Create a image view to hold a image26         ImageView ivGamer1 = new ImageView("image/Gamer1.jpg");27         ivGamer1.setFitWidth(100);28         ivGamer1.setFitHeight(100);29         pane.add(ivGamer1, 0, 0);    // Add image view to pane30         31         // Create a image view to hold a image32         ImageView ivGamer2 = new ImageView("image/Gamer1.jpg");33         ivGamer2.setFitWidth(100);34         ivGamer2.setFitHeight(100);35         ivGamer2.setStyle("-fx-rotate: 180; -fx-opacity: 0.6;");36         pane.add(ivGamer2, 1, 0);37         38         // Create a image view to hold a image39         ImageView ivGamer3 = new ImageView("image/Gamer1.jpg");40         ivGamer3.setFitWidth(100);41         ivGamer3.setFitHeight(100);42         ivGamer3.setStyle("-fx-rotate: 90; -fx-opacity: 0.2;");43         pane.add(ivGamer3, 0, 1);44         45         // Create a image view to hold a image46         Image iGamer4 = new Image("image/Gamer2.jpg");47         ImageView ivGamer4 = new ImageView(iGamer4);48         ivGamer4.setFitWidth(100);49         ivGamer4.setFitHeight(100);50         pane.add(ivGamer4, 1, 1);51         52         // Create a scene53         Scene scene = new Scene(pane);54         55         primaryStage.setScene(scene);56         primaryStage.setTitle("Gamers");57         primaryStage.setResizable(true);58         primaryStage.show();59     }60 }

运行效果:

 

 

例子2:以半透明的状态显示两个狗头,当点击其中某一个狗头,就让它变成不透明,另一个保持半透明。当将鼠标移进某一狗头所在的区域,而不点击时,该狗头变成不透明,另一个狗头变成半透明;当鼠标移出该狗头所在的区域,恢复两个狗头原来的状态。

1 import javafx.application.Application;  2 import javafx.event.EventHandler;  3 import javafx.geometry.Insets;  4 import javafx.scene.Scene;  5 import javafx.scene.image.Image;  6 import javafx.scene.image.ImageView;  7 import javafx.scene.input.MouseEvent;  8 import javafx.scene.layout.GridPane;  9 import javafx.stage.Stage; 10  11 public class Main extends Application { 12  13     String opacityOfGamer1 = "-fx-opacity: 0.5;"; 14     String opacityOfGamer2 = "-fx-opacity: 0.5;"; 15      16     public static void main(String[] args) { 17         launch(args); 18     } 19  20     @Override 21     public void start(Stage primaryStage) throws Exception { 22         // Create a pane to hold the images 23         GridPane pane = new GridPane(); 24         pane.setStyle("-fx-border-color: green;"); 25         pane.setPadding(new Insets(10)); 26         pane.setHgap(10);            // The width of the horizontal gaps between columns. 27         pane.setVgap(10);            // The height of the vertical gaps between rows. 28          29         // Create a image view to hold a image 30         ImageView ivGamer1 = new ImageView("image/Gamer1.jpg"); 31         ivGamer1.setFitWidth(100); 32         ivGamer1.setFitHeight(100); 33         ivGamer1.setStyle("-fx-opacity: 0.5;"); 34         pane.add(ivGamer1, 0, 0);    // Add image view to pane 35          36         // Create a image view to hold a image 37         Image iGamer2 = new Image("image/Gamer2.jpg"); 38         ImageView ivGamer2 = new ImageView(iGamer2); 39         ivGamer2.setFitWidth(100); 40         ivGamer2.setFitHeight(100); 41         ivGamer2.setStyle("-fx-opacity: 0.5;"); 42         pane.add(ivGamer2, 1, 0); 43          44          45         ivGamer1.setOnMouseClicked(new EventHandler
() { 46 @Override 47 public void handle(MouseEvent event) { 48 ivGamer1.setStyle("-fx-opacity: 1;"); 49 ivGamer2.setStyle("-fx-opacity: 0.5;"); 50 opacityOfGamer1 = ivGamer1.getStyle(); 51 opacityOfGamer2 = ivGamer2.getStyle(); 52 System.out.println("The opacity of the Gamer 1: " + opacityOfGamer1); 53 System.out.println("The opacity of the Gamer 2: " + opacityOfGamer2); 54 System.out.println(); 55 } 56 }); 57 58 ivGamer1.setOnMouseEntered(new EventHandler
() { 59 @Override 60 public void handle(MouseEvent event) { 61 ivGamer1.setStyle("-fx-opacity: 1;"); 62 ivGamer2.setStyle("-fx-opacity: 0.5;"); 63 } 64 }); 65 66 ivGamer1.setOnMouseExited(new EventHandler
() { 67 @Override 68 public void handle(MouseEvent event) { 69 ivGamer1.setStyle(opacityOfGamer1); 70 ivGamer2.setStyle(opacityOfGamer2); 71 } 72 }); 73 74 ivGamer2.setOnMouseClicked(new EventHandler
() { 75 @Override 76 public void handle(MouseEvent event) { 77 ivGamer1.setStyle("-fx-opacity: 0.5;"); 78 ivGamer2.setStyle("-fx-opacity: 1;"); 79 opacityOfGamer1 = ivGamer1.getStyle(); 80 opacityOfGamer2 = ivGamer2.getStyle(); 81 System.out.println("The opacity of the Gamer 1: " + opacityOfGamer1); 82 System.out.println("The opacity of the Gamer 2: " + opacityOfGamer2); 83 System.out.println(); 84 } 85 }); 86 87 ivGamer2.setOnMouseEntered(new EventHandler
() { 88 @Override 89 public void handle(MouseEvent event) { 90 ivGamer1.setStyle("-fx-opacity: 0.5;"); 91 ivGamer2.setStyle("-fx-opacity: 1;"); 92 } 93 }); 94 95 ivGamer2.setOnMouseExited(new EventHandler
() { 96 @Override 97 public void handle(MouseEvent event) { 98 ivGamer1.setStyle(opacityOfGamer1); 99 ivGamer2.setStyle(opacityOfGamer2);100 }101 });102 103 104 // Create a scene105 Scene scene = new Scene(pane);106 107 primaryStage.setScene(scene);108 primaryStage.setTitle("Gamers");109 primaryStage.setResizable(true);110 primaryStage.show();111 }112 }

运行效果:

 

 

 

转载于:https://www.cnblogs.com/Satu/p/10804831.html

你可能感兴趣的文章
jvm 学习(一)
查看>>
JavaScript简介
查看>>
SQL Server附加数据库拒绝访问解决方法汇总
查看>>
SM2算法原理及实现
查看>>
RHCA教材翻译计划
查看>>
js-小括号在不同场合下的作用
查看>>
我的友情链接
查看>>
kvm中虚拟机的硬盘扩容
查看>>
Android (Launch Mode) 四种启动模式
查看>>
透视学理论(二)
查看>>
Dubbo/HSF在Service Mesh下的思考和方案
查看>>
Django form表单
查看>>
CTYL-9.14(tomcat端口与阿里云安全组,域名与tomcat配置,域名与反向代理)
查看>>
Java 多线程相关问题记录
查看>>
LNMP架构介绍、MySQL安装、PHP安装、 Nginx介绍
查看>>
简单的Spark+Mysql整合开发
查看>>
阿里java面试经验大汇总(附阿里职位需求)
查看>>
Python全套零基础视频教程+软件2018最新编程视频!
查看>>
内存管理之1:x86段式内存管理与保护模式
查看>>
20180925上课截图
查看>>