2012-02-29 47 views
8

Tôi muốn chương trình JavaFX của mình dọn sạch chương trình khi tôi nhấn nút x ở góc trên cùng bên phải của cửa sổ. Làm thế nào tôi có thể làm điều đó? Các mã ngẫu nhiên làCách dọn dẹp chương trình khi thoát khỏi chương trình javafx?

 JIntellitype.getInstance().cleanUp(); 
+0

Hmm..do một số nghiên cứu. Bạn sẽ cần phải đăng ký một số loại người nghe để bắt sự kiện * đóng cửa sổ * và đặt mã của bạn vào đó. – mre

Trả lời

11

Nếu bạn có nhiều cửa sổ và dọn dẹp chỉ dành cho nguồn lực được phân bổ cho các cửa sổ được đóng lại, thêm một eventhandler thích hợp cho sự kiện setOnHidden của cửa sổ.

Một mô tả về sự kiện Window.setOnHidden:

gọi ngay sau khi cửa sổ đã bị ẩn. Khi cửa sổ là bị ẩn, trình xử lý sự kiện này được gọi cho phép nhà phát triển xóa tài nguyên hoặc thực hiện các tác vụ khác khi Cửa sổ đóng.

Nếu bạn tạo nhiều Giai đoạn cho Ứng dụng JavaFX của mình, Ứng dụng sẽ đóng khi Giai đoạn cuối cùng của Ứng dụng đóng. Khi Ứng dụng đóng, sau đó phương thức của stop của Ứng dụng được gọi, mà bạn có thể thực hiện bằng cách ghi đè nó trong lớp Ứng dụng của bạn.

Phần trình bày về phương pháp Application.stop:

Phương pháp này được gọi khi ứng dụng nên dừng lại, và cung cấp một nơi thuận tiện để chuẩn bị cho thoát ứng dụng và phá hủy tài nguyên.

Trong trường hợp của bạn, việc triển khai Application.stop có lẽ là giải pháp thích hợp nhất.

+0

Cảm ơn, nó hoạt động như tôi muốn, giải pháp thứ hai. –

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