我有一个BufferedImage,我想在stackpane中显示,因为我在JavaFX应用程序中工作。几天前我也处于同样的情况,但我在Java工作,在这种情况下,我喜欢这样:
public static void VisImmagineDaPc(JFrame frame, BufferedImage image) throws Throwable
{
if (label==null){
label = new JLabel(new ImageIcon(image));
frame.getContentPane().add(label, BorderLayout.AFTER_LAST_LINE);
// frame.setSize(10, 10);
int larghezza = frame.getWidth();
int altezza = frame.getHeight();
// frame.setSize(larghezza, altezza);
frame.setSize(larghezza, altezza );
frame.setResizable(false);
frame.setVisible(true);
}
...
该方法继续使用其他代码,但目前并不重要。所以,在Java我用图像创建一个Jtag,然后添加到Jframe。我必须在JavaFX中做什么才能在Stackpane中显示图片?我尝试了content.get儿童(). addAll(图像);
其中内容
是一个stackpane,但它不工作。
提前感谢,我为问题的简单道歉。
将buffereImage
转换为JavafxImage
后,您必须向堆栈窗格添加节点
,而图像
不是节点
,因此您可以使用图像
构建图像视图
。
@FXML StackPane s;
@FXML void initialize(){
BufferedImage b = ImageIO.read(file);
Image i = SwingFXUtils.toFXImage(b, null);
ImageView v = new ImageView(i);
s.getChildren().add(v);
}
我的BorderPane的中心有一个名为designView的堆栈窗格(FXML定义的堆栈窗格)。我试图在designView中获得一个可拖动的窗格。如果我将该窗格添加到rootView(我的BordePane)中,一切都很好。但是,如果我尝试将其添加到designView中,如下所示: 窗格在设计视图中显示正确,但不再可拖动。MouseEvents会触发,但窗格的位置没有更新。我认为问题在于la
我想要一个堆栈窗格来模拟FullHD显示,即1920x1080。 下面是创建堆栈窗格并处理它的代码: DisplayPane构造函数方法 ControlButtonPane构造函数类方法: 任何帮助都会很好。
我在StackPane中调整ImageView的大小时遇到了一个问题:如果StackPane是根容器,并且我将图像的高度和宽度绑定到StackPane,则一切正常。 但若我将这样的堆栈窗格放置在网格中,那个么图像的大小就无法正确调整。正如我所读到的,ImageView无法调整大小的问题。有什么方法可以调整它的大小吗?或者你能给一些建议如何调整ImageView的大小吗?
我在练习javafx做饼图。下面是开发饼图的代码。如果使用和,我发现输出没有区别。
您好,当鼠标单击stackpane(父)时,我试图取消选择listview项。我尝试了这段代码,但当用户单击按钮(Stackpane的子项)时,事件仍然被触发: 如何仅触发stackpane鼠标事件单击?
当我运行以下程序时: 我只在文本标签周围得到一个红色框,但是当我取消注释上面的Platform.runLater()块内的两行时,我在外椭圆周围得到一个红色框,这就是我想要的。因此,在我看来,堆栈窗格的布局边界没有从模型描述中正确设置,因为边界仅从标签控件中确定。但是当我在 Platform.runLater() 中强制无效时,布局边界就在它们应该在的位置。 为什么会发生这种情况,我该如何防止?我