我有一个非常基本的应用程序,我认为应该改变图像的宽度,但它什么都不做......任何人都可以告诉我为什么,当我点击图像时,图像没有任何反应?
(注意,图像本身并不重要,我只想弄清楚如何在JavaFX中缩小和增长图像)
import javafx.application.Frame;
import javafx.application.Stage;
import javafx.scene.image.ImageView;
import javafx.scene.image.Image;
import javafx.input.MouseEvent;
var w:Number = 250;
Frame {
title: "Image View Sample"
width: 500
height: 500
closeAction: function() {
java.lang.System.exit( 0 );
}
visible: true
stage: Stage {
content: [
ImageView {
x: 200;
y: 200;
image: Image {
url: "{__DIR__}/c1.png"
width: bind w;
}
onMouseClicked: function( e: MouseEvent ):Void {
w = 100;
}
}
]
}
}
谢谢堆!
答案 0 :(得分:1)
尝试绑定比例属性:
import java.lang.System;
import javafx.application.Frame;
import javafx.application.Stage;
import javafx.scene.image.ImageView;
import javafx.scene.image.Image;
import javafx.input.MouseEvent;
var w:Number = 1;
Frame {
title: "Image View Sample"
width: 500
height: 500
closeAction: function() {
java.lang.System.exit( 0 );
}
visible: true
stage: Stage {
content: [
ImageView {
x: 200
y: 200
anchorX:200
anchorY:200
scaleX:bind w
scaleY:bind w
image: Image {
url: "{__DIR__}/time.png"
}
onMouseClicked: function( e: MouseEvent ):Void {
w += 0.1;
}
}
]
}
}
答案 1 :(得分:1)
感谢您的回复,很抱歉延迟回复您,但事实证明您需要做的就是绑定图片本身:
image: bind Image {
url: "{__DIR__}/time.png"
width: w;
}
这似乎就是这个伎俩,我个人觉得有点误导,但嘿,它有效