javafx界面编程问题
题目:编写一个程序,单击鼠标,界面就会产生点击处位置的坐标。为什么我点击鼠标,没有返回鼠标坐标呢。...
题目:编写一个程序,单击鼠标,界面就会产生点击处位置的坐标。
为什么我点击鼠标,没有返回鼠标坐标呢。 展开
为什么我点击鼠标,没有返回鼠标坐标呢。 展开
1个回答
展开全部
效果图
ps:这种截图的代码看起来很麻烦,建议你以后复制粘贴代码,看起方便点
参考代码
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.text.Text;
import javafx.stage.Stage;
public class ClickApp extends Application{
public static void main(String[] args) {
launch(args);
}
final static String WZ="位置:";
@Override
public void start(Stage primaryStage) throws Exception {
Pane pane=new Pane();//Pane布局类似于绝对布局, 一般需要为里面的组件提供一个位置
Text text=new Text(WZ+"未知,未知");
text.setFill(Color.RED);//文字颜色设置为红色
//设置text的位置 ,在默认位置的基础上,右移100,下移100
//text.setTranslateX(100);//如果没有指定text的位置, 那么text默认会在窗口左上角的里面,不能显示出来
//text.setTranslateY(100);
pane.getChildren().addAll(text);
Scene scene=new Scene(pane,300,300,Color.ALICEBLUE);
primaryStage.setScene(scene);
primaryStage.setTitle("点击测试");
primaryStage.show();
//给场景添加鼠标点击事件 ,
scene.setOnMouseClicked(e->{
text.setTranslateX(e.getSceneX());
text.setTranslateY(e.getSceneY());
text.setText(WZ+e.getSceneX()+","+e.getSceneY());//点击时获取鼠标在场景上的位置
});
}
}
追问
谢谢!明白错误在哪里了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |