我试图在JavaFX中显示GridPane场景的网格线,但尽管调用了setGridLinesVisible(true)
,它们还是没有显示出来。我做错了什么?
我想在程序的主菜单上显示网格线,这样我就可以知道节点在上面的位置。不幸的是,当我运行程序时,所有显示的都是一个带有单个按钮的空白屏幕。
我的主菜单课:
package screens;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.Pane;
/**
* Creates the main menu Pane object and returns it.
* @author LuminousNutria
*/
public class MainMenu {
public MainMenu() {}
public Pane getPane() {
GridPane grid = new GridPane();
grid.setGridLinesVisible(true);
Button bttn = new Button("button");
grid.add(bttn, 2, 2);
return grid;
}
}
我的主要课程:
package mainPackage;
import screens.*;
import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.layout.Pane;
/**
* Displays the Pane.
* @author LuminousNutria
*/
public class Main extends Application {
// create main menu Pane
private Pane mainMenu = new MainMenu().getPane();
// create Scene
private Scene scene = new Scene(mainMenu, 1600, 900);
@Override
public void start(Stage stage) {
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
JavaFX的GridPane类只会在程序员设置对象在网格上的位置时创建尽可能多的点。
例如,如果将对象添加到栅格中,且x和y位置均等于0,则栅格将只有一个(x,y)位置,即(0,0)。
此外,即使网格有许多位置,除非程序员设置HGap
和Vgap
网格属性,否则网格的所有“位置”都将位于程序创建的窗口中的同一点上。
问题是我没有调整HGap
和VGap
属性,所以整个网格聚集在窗口中的一个点上。这使得不可能看到任何线条。
用下面的代码替换getPane()方法可以让我看到网格线。
public Pane getPane() {
GridPane grid = new GridPane();
grid.setGridLinesVisible(true);
grid.setVgap(8);
grid.setHgap(8);
Button btn = new Button("button");
grid.add(btn, 5, 5);
return grid;
}
这是我修复程序后显示的内容。
我想在键盘出现时重新定位布局,例如在编辑文本字段时,以便在聚焦字段上获得可见性。我尝试了WindowsofInputMode,但没有任何区别。如何到达它?非常感谢。
我需要在文件中创建一个图形,而不在IPython笔记本中显示它。我不清楚和。但是,当我调用除了保存在。当自动创建大型打印文件集时,这通常是不可取的。或者在需要另一个应用程序进行外部处理的中间文件的情况下。 不确定这是一个还是笔记本问题。
大家早上好,当显示键盘时,我有一个关于调整布局大小的小问题。 在清单中,我有调整调整大小,我也试图使用调整潘,但我有问题与滚动的回收器视图。 我的布局代码是: 谢谢,谁能帮我
我的目标是实现大多数消息传递应用程序(如Facebook Messenger、Viber、What's up)在显示附件表时所做的事情。如果软键盘可见并且用户想要附加某些东西,则键盘是隐藏的,附件表会在其位置呈现。 为了实现这一点,应该在根视图大小更改时更改布局。否则,在显示/隐藏键盘之前不久应用布局更改时,就会出现图形故障。 如果我可以在键盘隐藏的确切时刻更改我的布局,我可以把它做好。我尝试过使
主要内容:示例,示例2GridPane通常用于布局:第一列上的只读标签的输入表单和第二列上的输入字段。 GridPane可以在行,列或单元格级别指定约束。 例如,我们可以设置包含输入文本字段的第二列,以在窗口调整大小时调整大小。 示例 以下代码演示使用GridPane布局的简单表单应用程序。它有以下布局。 完整的代码实现如下所示 - 上面的代码生成以下结果。 示例2 以下是一个实现登录窗口的代码 - 上面的代码生成以下
问题内容: 我正在为我的学生编写MathQuiz,包括用于渲染的JLatexMath和用于蜂鸣器的jinput。问题是,有时(像每四次一样)当我启动程序时,所有组件都不可见。它们在调整JFrame大小后出现。首先,我想到了jinput或jlatexMath库中的Bug,但是即使使用最小的代码,我也会遇到相同的错误: 代码有什么问题? 问题答案: 首先移到构造函数的末尾。 而不是去这里… 移到这里…