首页 > 解决方案 > 为什么在尝试将按钮添加到 GridPane 时收到错误消息?

问题描述

我收到 grid.add(button, c, r); 错误 说“GridPane 类型中的方法 add(node, int, int) 不适用于参数 (Button, int, int)”。这是一件微不足道的事情,但我无法弄清楚出了什么问题。我知道这是说我正在尝试将 Button 放在节点应该在的位置,但我已经查找了添加到网格窗格中的按钮示例,它们具有完全正确的语法,没有任何问题。

抱歉,如果之前有人问过/回答过这个问题,我找不到任何与此相同的问题。

public class Demo extends Application {
    public static void main(String[] args) {
        // Nothing
    }

    @Override
    public void start(Stage stage) {
        GridPane grid = new GridPane();
        grid.setPadding(new Insets(3));
        grid.setHgap(10);
        grid.setVgap(10);

        for (int r = 0; r < 10; r++) {
            for (int c = 0; c < 10; c++) {
                int number = 10 * r + c;
                Button button = new Button();
            
                grid.add(button, c, r); 
            }
        }

        stage.show();
    }
}

标签: javajavafx

解决方案


也许,检查导入以确保您没有从 java.awt 库导入?

import javafx.geometry.Insets;
import javafx.scene.control.Button;

推荐阅读