无法设置水平盒子或垂直盒子的样式
P粉773659687
P粉773659687 2023-09-03 10:20:53
[CSS3讨论组]

非常令人沮丧,因为我遵循指南和基本教程。我可以将 CSS 样式应用于不同的元素,但不能应用于 vbox 或 hbox。

我有以下简单的应用程序,使用 FMXL 和 CSS 创建一个简单的场景:

import java.net.URL;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.stage.Stage;
import javafx.scene.Parent;
import javafx.scene.Scene;


public class BingRen extends Application {
    @Override
    public void start(Stage primaryStage) {
        Parent root = null;
        FXMLLoader loader = new FXMLLoader();
        URL xmlUrl = getClass().getResource("/BingRen.fxml");
        loader.setLocation(xmlUrl);
        try {
            root = loader.load();
            Scene scene = new Scene(root,400,400);
            scene.getStylesheets().add(getClass().getResource("BingRen.css").toExternalForm());
            primaryStage.setScene(scene);
            primaryStage.show();
        } catch(Exception e) {
            e.printStackTrace();
        }
    }
    
    public static void main(String[] args) {
        launch(args);
    }
}

使用 FXML,仅创建一个 BordPane 和 2 个 HBox,各包含一个标签。几乎和 HellopApp 一样简单:

<?xml version="1.0" encoding="UTF-8"?>

<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.geometry.*?>


<BorderPane fx:id="rootBorderPane"
        xmlns="http://javafx.com/javafx"
        xmlns:fx="http://javafx.com/fxml"
        fx:controller="MainControler">
    <top>
        <HBox>
            <Label text="BingRen app" />
        </HBox>
    </top>
    <bottom>
        <HBox>
            <Label text="Status bar" />
        </HBox>
    </bottom>
    <center>
    </center>
</BorderPane>

还有CSS来设置一些基本属性:

.hbox {
    -fx-background-color: #00ff00;
    -fx-border-color: #00ff00;
    -fx-border-width: 2px;
    -fx-padding: 10;
    -fx-spacing: 8;
}

.label {
    -fx-text-fill: #0000ff;
}

标签正确变为蓝色,但未应用 hbox 样式


事实上,这些建议都不起作用。

我尝试过:

  • 将 css 文件中的 .hbox 更改为 .Hbox
  • 在css文件中创建#allbox并添加fx-id="allbox"和fxml文件

对于每次更改,我都会更改标签的颜色,以确保新版本的 CSS 能够被读取。

标签总是改变颜色,但我从来没有在水平盒中得到背景或填充

P粉773659687
P粉773659687

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号