关于javafxtabpane的信息

本篇文章给大家谈谈javafxtabpane,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

1、javaFX怎么把两个不同的pane加到一个scene中2、javafx怎么给tabpane添加样式3、javafx中如何给面板添加背景图片例如BorderPane4、JavaFX界面半透明遮盖怎么整5、请问javafx该如何获取一个组件的全局绝对坐标?目前我想让组件随着鼠标的拖动而改变位置,(接下面)

javaFX怎么把两个不同的pane加到一个scene中

这种要并排放置的情况就把一个HBox对象设为Scene的root,然后再把两个panel放到HBox上即可。由于你只是要界面,计算器的计算逻辑我就不实现了,具体代码如下(运行环境:jdk8或以上):

import javafx.application.Application;

import javafx.geometry.Pos;

import javafx.scene.Scene;

import javafx.scene.control.Button;

import javafx.scene.control.Label;

import javafx.scene.layout.GridPane;

import javafx.scene.layout.HBox;

import javafx.scene.layout.Priority;

import javafx.stage.Stage;

public class TwoPane extends Application {

final static private int BUTTON_WIDTH = 40;

final static private int BUTTON_HEIGHT = 40;

public static void main(String[] args) {

launch(args);

}

@Override

public void start(Stage primaryStage) throws Exception {

primaryStage.setTitle(“简易计算器”);

Label label = new Label(“”);

label.setAlignment(Pos.CENTER);

label.setMinWidth(100);

HBox expresssionPanel = new HBox(label);

expresssionPanel.setAlignment(Pos.CENTER);

GridPane keyboardPanel = new GridPane();

for(int i = 1; i = 9; ++i){

Button btn = new Button(String.valueOf(i));

btn.setPrefSize(BUTTON_WIDTH, BUTTON_HEIGHT);

btn.setOnAction(e – label.setText(label.getText() + btn.getText()));

keyboardPanel.add(btn, (i – 1) % 3, i 3 ? (i 6 ? 2 : 1) : 0);

}

Button zero = new Button(String.valueOf(“0”));

zero.setPrefSize(BUTTON_WIDTH, BUTTON_HEIGHT);

zero.setOnAction(e – label.setText(label.getText() + zero.getText()));

Button plus = new Button(String.valueOf(“+”));

plus.setPrefSize(BUTTON_WIDTH, BUTTON_HEIGHT);

plus.setOnAction(e – label.setText(label.getText() + plus.getText()));

Button minus = new Button(String.valueOf(“-“));

minus.setPrefSize(BUTTON_WIDTH, BUTTON_HEIGHT);

minus.setOnAction(e – label.setText(label.getText() + minus.getText()));

Button time = new Button(String.valueOf(“*”));

time.setPrefSize(BUTTON_WIDTH, BUTTON_HEIGHT);

time.setOnAction(e – label.setText(label.getText() + time.getText()));

Button divide = new Button(String.valueOf(“/”));

divide.setPrefSize(BUTTON_WIDTH, BUTTON_HEIGHT);

divide.setOnAction(e – label.setText(label.getText() + divide.getText()));

Button calc = new Button(String.valueOf(“=”));

calc.setPrefSize(BUTTON_WIDTH, BUTTON_HEIGHT);

calc.setOnAction(e – label.setText(label.getText() + calc.getText())/*TODO 计算逻辑代码待完成*/);

keyboardPanel.add(zero, 0, 3);

keyboardPanel.add(plus, 1, 3);

keyboardPanel.add(minus, 2, 3);

keyboardPanel.add(time, 0, 4);

keyboardPanel.add(divide, 1, 4);

keyboardPanel.add(calc, 2, 4);

HBox root = new HBox(expresssionPanel, keyboardPanel);

HBox.setHgrow(expresssionPanel, Priority.ALWAYS);

primaryStage.setScene(new Scene(root));

primaryStage.show();

}

}

————-效果如下—————-

javafx怎么给tabpane添加样式

javafx怎么给tabpane添加样式

Tab tab = …;

tab.setGraphic(new ImageView(…));

or

Tab tab = TabBuilder.create().graphic(new ImageView(…)).build();

javafx中如何给面板添加背景图片例如BorderPane

用指定的图片构造标签对象lb。

把标签放在第二层JlayerPane上。

设置标签的尺寸,即背景图象的大小。

把内容面板设置为透明,这样整个框架的背景就不再是内容面板的背景色,而是第二层中标签的图像。

将标签添加到主面板pnlMain中。

关于javafxtabpane的信息

JavaFX界面半透明遮盖怎么整

stage = new Stage();

stage.initModality(Modality.APPLICATION_MODAL);

stage.initStyle(StageStyle.TRANSPARENT);//这是让弹出窗口透明,如果不设置stage透明,stackpane再怎么设置也没用。

FXML:

StackPane

style=”-fx-border-radius:8px;-fx-opacity: 0.4;-fx-background-color: black ;”

xmlns=”Java SE | Oracle Technology Network” xmlns:fx=”Java SE | Oracle Technology Network”

fxml里用css样式 -fx-opacity: 0.4;控制stackpane半透明

以上方法stage显示后是半透明遮罩效果,但是我想要在stackpane中间一块区域里放输入对话框,结果输入部分还是半透明的效果,还未能解决

追加—-换了下实现方式,就是在primaryStage布局中用stackpane,在stackpane的children中添加一个半透明的pane,Pane fx:id=”main_mask” style=”-fx-border-radius:8px;-fx-opacity: 0.4;-fx-background-color: black ;” visible=”false” /,默认不显示;在显示弹出的stage时,再通过代码设置main_mask显示,在关闭弹出stage时,隐藏main_mask,这样能达到想要的效果了,但是这样的缺点是不通用,组件不独立,想办法改进中

请问javafx该如何获取一个组件的全局绝对坐标?目前我想让组件随着鼠标的拖动而改变位置,(接下面)

效果如图

鼠标拖动效果

参考代码如下

import javafx.application.Application;

import javafx.scene.Scene;

import javafx.scene.layout.Pane;

import javafx.scene.layout.Region;

import javafx.stage.Stage;

public class TestDraggedApp extends Application {

  //保存鼠标点击在组件上的位置

  private  double offsetX,offsetY;

  @Override

  public void start(Stage primaryStage) {

      Pane root = new Pane();

      Region region = new Region();

      region.setStyle(“-fx-background-color: #75c0ff;-fx-pref-width: 100;-fx-pref-height: 50”);

      root.getChildren().add(region);

      primaryStage.setScene(new Scene(root, 500, 320));

      primaryStage.setTitle(“TestDraggedApp”);

      primaryStage.show();

      //设置鼠标按下事件

      region.setOnMousePressed(event – {

          //记录鼠标点击在组件上的位置

          offsetX = event.getX();

          offsetY = event.getY();

      });

      //设置鼠标拖动事件

      region.setOnMouseDragged(event – {

          //设置新的位置

          double layoutX = event.getSceneX() – offsetX;

          region.setLayoutX(layoutX);

          double layoutY = event.getSceneY() – offsetY;

          region.setLayoutY(layoutY);

      });

  }

  public static void main(String[] args) {

      launch(args);

  }

}

javafxtabpane的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、javafxtabpane的信息别忘了在本站进行查找喔。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年3月30日 23:47:41
下一篇 2024年3月30日 23:55:53

相关推荐

  • 关于linuxcat计算行数的信息

    Linux如何通过命令查看日志文件的某几行(中间几行或最后几行) tail -n 1000:显示最后1000行 tail -n +1000:从1000行开始显示,显示1000行以后的 head -n 1000:显示前面1000行 【三】用sed命令 sed -n 5,10p filename 这样你就可以只查看文件的第5行到第10行。 tail 命令:可以实…

    2024年5月21日
    3700
  • 关于linux下ftp的信息

    linux中ftp怎么搭建 1、如果你要直接搭建的话,可以使用pureftp。如果觉得自己搭建很复杂,可以使用第三方工具,比如护卫神主机大师。安装后在线就可以安装FTP已经开设FTP账户。 2、Linux下可以配置vsftp服务来实现FTP的部署。配置支持ipv6地址的服务只要启用listen_ipv6=yes将ipv6的监听设置开启即可。当然具体配置没有那…

    2024年5月21日
    4400
  • 关于linuxchrome支付宝的信息

    chrome怎么不支持支付宝控件 1、支付宝的安全控件都是以ie为基础开发的,对非ie内核的浏览器支持不好。坚持用chrome的话,可以在 工具—扩展程序 里面搜索安装chromeIE插件。 2、安装在电脑中的,并不是安装在浏览器上面的。使用的时候,如果谷歌浏览器默认阻止支付宝控件的运行,你在支付页面的时候,注意地址栏最后面有一个红色叉号,提示你…

    2024年5月21日
    5200
  • 关于excel查找重复的函数的信息

    excel中vlookup函数如何查找重复值? 1、要查找两个表格中相同的列数据,可以使用 Excel 中的“VLOOKUP”函数或“MATCH”函数。 2、在一张Excel表格的重复记录中,让你快速列出每种不同物品第2次或第n次出现的记录,你会怎么做?Vlookup函数就有这个本事。 3、excel是办公一族常用的办公技巧,如何快速在不同的区域中找出相同的…

    2024年5月21日
    4200
  • 关于linuxlocalegen的信息

    如何用lynx浏览中文网页,我打开的总是乱码?我是在windows系统用虚拟机… 1、查看或输入中文网页的方法很简单,先启动汉字系统(例如CCDOS9UCDOS等,建议使用CCDOS97以取得最好的效果)再运行Lynx即可。 2、安装:sudo apt-get install links 使用: links 完成打开。Linux是一套免费使用和自…

    2024年5月21日
    4600
  • 关于excel3p的信息

    在excel2007中,公式=if(12,3,4,)的值是多少 通过excel可以完成很多工作,比如一组数据,可以得出这组数据的总和、平均值、乘积等等。就来说一下计算一组数据的乘积的方法。首先打开excel,由于我是在这里做演示,所以随便输入了两组数据。如图。 excel常用公式函数有:IF函数、SUMIFS函数、COUNTIF、VLOOKUP函数,LOOK…

    2024年5月21日
    3900
  • 关于c语言脱壳的信息

    软件如何脱壳 脱壳需要的工具:调试器 比如IDA Pro、OllyDbg等等。调试器是进行逆向工程必不可少的工具,它可以帮助我们查看和分析程序内存、寄存器、堆栈等状态信息,方便我们定位和分析代码。脱壳软件 比如UPX、ASProtect、Themida等等。 步骤2脱壳 对一个加了壳的程序,去除其中无关的干扰信息和保护限制,把他的壳脱去,解除伪装,还原软件本…

    2024年5月21日
    4000
  • 关于java1转一的信息

    java中把字符1转换为数字1的函数是什么? 1、(1)使用Integer.parseInt()和Double.parseDouble()方法。(2)第二个问题不全啊,如果你想把数字转换为字符串的话。可以使用String.valueOf()方法,也可以用+数字,来进行强转。 2、字符串里包含数字,首先要使用正则表达式将其中的数字提取出来,正则写法为: ^[0…

    2024年5月21日
    7600
  • 关于linux下的lftp的信息

    Linux下面的vsftpd和lftp区别? 但是和上面的区别就是,这个用户名和密码,在你linux系统中是没有的(没有该用户帐号) Vsftp的安装配置1 安装vsftp 的安装包,可以在安装里找到。 用yum 安装过程也很简单。 区别如下:指代不同 scp:是用来进行远程文件拷贝的,是 SSH 中最方便有用的命令。ftp: 是 TCP/IP 协议组中的协…

    2024年5月21日
    3300
  • 关于excel下划线打不出来的信息

    表格空白下划线___怎么打 首先在Excle的任意单元格里输昌好入“姓名”,点击单元格上方字母右则“|”拉动将该列调整为合适大小。右键需要在空白处输入下划线的单元格,本示例的“姓名:”单元格,在弹出菜单中点击“设置单敬仿元格格式”。 选中需要设置的单元格。单击鼠标右键,并在选项中点击设置单元格格式。在页面点击上方的字体。在下划线选项选择下划线样式,以单下划线…

    2024年5月21日
    3700

发表回复

登录后才能评论



关注微信