0

ControlsFXforの最新バージョンを使用していJavaFXますが、非常に奇妙なバグに遭遇しています..誰かがその「修正」を見つけてくれることを願っています。

このための簡単なテスト ケースは作成していませんが、 を作成しcustom Dialog、 を追加し、GridPaneを に追加するSegmentedButtonと、GridPaneダイアログ全体の境界線が失われます。

これは、ダイアログを初めて開いたときにのみ発生します。ダイアログを再作成すると、すべて正常に動作します*

このような不具合のために、SegmentedButton をダンプするのは本当に嫌です.. 他の誰かがこの問題に遭遇しましたか?

編集、これはバグを示す簡単なテストです。このテストでは、影響はさらに悪化しています。ある種のクリッピングバグのようです。

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.ToggleButton;
import javafx.stage.Stage;
import org.controlsfx.control.SegmentedButton;
import org.controlsfx.dialog.Dialog;

public class DialogTest extends Application {

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

    @Override
    public void start(Stage primaryStage) throws Exception {
        Group root = new Group();
        Scene scene = new Scene(root);
        primaryStage.setScene(scene);

        primaryStage.show();

        Dialog dlg = new Dialog(primaryStage, "Test Dialog");
        dlg.setMasthead("Dialog test");
        dlg.setIconifiable(false);
        dlg.setResizable(false);

        SegmentedButton seg = new SegmentedButton();
        seg.getButtons().add(new ToggleButton("Button 1"));
        seg.getButtons().add(new ToggleButton("Button 2"));
        seg.getButtons().add(new ToggleButton("Button 3"));
        seg.getButtons().add(new ToggleButton("Button 4"));
        seg.getButtons().add(new ToggleButton("Button 5"));

        dlg.setContent(seg);

        dlg.show();
    }
}
4

1 に答える 1

1

dialog.getWindow().sizeToScene()いくつかの実験の後、ダイアログを表示する前に呼び出すだけで問題を修正しました。

于 2014-09-09T09:58:37.303 に答える