【问题标题】:How to fix my calculator java program如何修复我的计算器 java 程序
【发布时间】:2015-08-07 13:40:13
【问题描述】:
package lab7;

import javafx.application.Application;
import javafx.event.Event;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

public class cool extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception {

        BorderPane bp = new BorderPane();
        bp.getStyleClass().add("boop");

        GridPane gp = new GridPane();
        GridPane gp2 = new GridPane();

        Label label1 = new Label("Reverse Multiplication Table");
        label1.getStyleClass().add("label1");

        HBox counterBox = new HBox();
        counterBox.getStyleClass().add("label1");
        counterBox.getChildren().add(label1);

        Label text = new Label("Enter Answer: ");
        text.getStyleClass().add("text");
        TextField textx = new TextField();
        gp.getStyleClass().add("textx");

        Button b = new Button();
        b.setText("Find Problems");

        Scene sc = new Scene(bp);
        sc.getStylesheets().add("Styles/Styles.css");

        for (int row = 0; row < 11; row++)
            for (int col = 0; col < 11; col++) {
                // This will create the first column
                if (row == 0) {
                    Label columns = new Label(" " + col);
                    gp2.add(columns, 3, col);
                    columns.getStyleClass().add("columnStyle");
                }

                else if (col == 0) {
                    // This will create the first row
                    Label rows = new Label("" + row);
                    gp2.add(rows, row, 0);
                    rows.getStyleClass().add("rowStyle");
                } else {
                    final int a = row;
                    final int z = col;
                    final Label table = new Label(row + " x " + col);
                    table.getStyleClass().add("table");
                    table.setMinWidth(150);

                    gp2.add(table, row, col);
                    b.getStyleClass().add("buttons");
                    b.addEventHandler(MouseEvent.MOUSE_CLICKED,
                            new EventHandler<Event>() {
                                boolean Answer = true;

                                @Override
                                public void handle(Event event) {
                                    if (Answer = true) {
                                        int read = (Integer.parseInt(textx
                                                .getText()));
                                        if (read == (a * z)) {
                                            table.setText(a + " x " + z);
                                            table.getStyleClass().add("ans");

                                        }
                                    }
                                }
                            });
                }
            }

        gp.add(text, 1, 0);
        gp.add(textx, 2, 0);
        gp.add(b, 3, 0);

        bp.setTop(counterBox);
        bp.setCenter(gp);
        bp.setBottom(gp2);

        primaryStage.setScene(sc);
        primaryStage.show();
        primaryStage.setTitle("Lab7");
    }

    public static void main(String args[]) {
        Application.launch(args);
    }

}

样式.css

.columnStyle{
    -fx-padding: 5px;
    -fx-border-width: 1px;
    -fx-text-fill:gold;
}
.rowStyle{
    -fx-padding: 64px;
    -fx-border-width: 1px;
    -fx-text-fill:gold;
}
.table{
    -fx-padding: 10px;
    -fx-border-width: 1px;
    -fx-border-style: solid;
    -fx-background-color: yellow;
    -fx-text-fill:red;
    }

.boop{
    -fx-padding: 20px;
    -fx-font-size: 100%;
    -fx-background-color:black;

}
.label1{
    -fx-background-color: white;
    -fx-alignment: center;
    -fx-text-fill:red;

}
.textx{
    -fx-alignment: center;
}
.text{
    -fx-text-fill:gold;
}
.ans{
    -fx-background-color:white;
}
.ans2{
    -fx-background-color:gold;
}
.button{
    -fx-text-fill:red;
}

我收到此错误 2015 年 5 月 25 日晚上 8:41:26 com.sun.javafx.css.StyleManager loadStylesheetUnPrivileged 警告:找不到资源“Styles/Styles.css”。

一开始我在运行程序时遇到了麻烦。现在我从我的 Styles.css 中得到一个没有任何内容的普通表,而且当我放置解决方案时,它没有选择正确的乘法选择。

【问题讨论】:

  • 请分享Styles.css关于您的项目的位置
  • 不应该是标准的,我必须把确切的路径?
  • 推荐相对路径,如果css在包内则需要限定包路径
  • 我放了路径,但我遇到了同样的问题@Arvind
  • 上次尝试的路径是什么?

标签: java javafx


【解决方案1】:
sc.getStylesheets().add("Styles/Styles.css");

这是你应该如何添加你的样式表:

sc.getStylesheets().add(getClass().getResource("Styles/Styles.css").toExternalForm());

如果不起作用,请分享 Styles.css 的确切路径。应该是 src/Styles/Styles.css。

注意:java 中的每个约定包名称应以小写字符开头。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-10
    • 1970-01-01
    • 2017-07-11
    相关资源
    最近更新 更多