2013-01-05 63 views
6

Tôi cần tạo một hộp thoại trong JavaFX. Tôi biết rằng tôi có thể làm cho Giai đoạn hoạt động giống như một hộp thoại bằng cách sửa đổi các thuộc tính phương thức, chủ sở hữu và có thể thay đổi kích thước.Cách tạo hộp thoại JavaFX?

Nhưng làm cách nào để ẩn các nút "thu nhỏ" và "tối đa hóa" khỏi cửa sổ Giai đoạn? Các hộp thoại điển hình chỉ có nút "đóng".

+0

Có lẽ đây [chủ đề] [1] sẽ giải quyết vấn đề của bạn. [1]: http://stackoverflow.com/questions/12912638/how-can-i-remove-only-the-minimise-button-from-stage-components-and-how-can- i – AsirC

Trả lời

20

Dưới Windows 7, khởi tạo để StageStyle.UTILITY trước khi bạn hiển thị các cửa sổ sẽ tạo ra một cửa sổ với chỉ một nút đóng và không có giảm thiểu hoặc tối đa hóa nút:

Stage dialog = new Stage(); 
dialog.initStyle(StageStyle.UTILITY); 
Scene scene = new Scene(new Group(new Text(25, 25, "Hello World!"))); 
dialog.setScene(scene); 
dialog.show(); 

Nếu bạn muốn có một bộ hoàn chỉnh các hộp thoại JavaFX cơ bản Tôi muốn giới thiệu số JavaFX UI sandbox dialogs.

JavaFX UI Sandbox không được tạo bởi tôi và không được lưu trữ trên trang web của tôi (nguồn được lưu trữ bởi Oracle). Tôi requested Oracle to document the sandbox dialog API. Nếu bạn thích, bạn có thể bỏ phiếu hoặc nhận xét về yêu cầu.

Makery's blog có một số tài liệu bên thứ ba tối thiểu của hộp thoại hộp cát, bao gồm các ví dụ sử dụng cơ bản cũng như cổng sau của phần hộp thoại đối với JavaFX 2.2.

Cập nhật

Các JavaFX UI Sandbox đã được thay thế bởi ControlsFX project.

Cập nhật

Java 8u40 will include JavaFX dialogs xây dựng vào các API nền tảng cốt lõi. Bạn có thể thử một số early access release of Java8u40. Lớp có liên quan là javafx.scene.control.Dialog và các lớp con liên quan như javafx.scene.control.Alert (lớp Alert là để hiển thị các hộp thoại chuẩn tương tự như lớp JOptionPane của Swing - vì vậy bạn không cần sử dụng JOptionPane để thoát khỏi chức năng hộp thoại chuẩn).

Makery wrote a new blog tutorial for dialog functionality provided in Java 8u40.

Câu hỏi liên quan

+0

Cảm ơn! Điều này rất hay! – ceklock

+0

Đã chỉnh sửa mã của bạn để làm cho mã hoàn chỉnh hơn. – ceklock

+0

@jewelsea, đã truy cập trang web của bạn. Có liên kết tải xuống cho mã chỉ dành cho cửa sổ bật lên hoặc bình chứa cho thư viện không?Tôi đã tải xuống toàn bộ dự án khá lớn - chỉ cần công cụ hội thoại. Ngoài ra ví dụ về cách sử dụng hộp thoại của bạn sẽ giúp ích rất nhiều – likejiujitsu

0

Bạn cũng có thể thử cách tiếp cận của tôi vào cửa sổ hộp thoại tùy chỉnh cho Java FX 8. Cả hai: mã nguồn với ví dụ sử dụng thực tế, và demo Runnable là có sẵn trong liên kết bên dưới:

https://github.com/bluevoxel/ChooseStage

Và đó làm thế nào nó trông giống như:

enter image description here

Các vấn đề liên quan