2012-08-14 40 views
5

Tôi đang cố gắng xây dựng cơ chế cảnh báo người dùng bằng cách đưa cửa sổ lên phía trước và sau đó nhấp vào biểu tượng trên màn hình cho người dùng. Tôi có hai câu hỏi liên quan đến cách tiếp cận này:Java Swing - cảnh báo người dùng

  1. Làm cách nào bạn có thể tìm thấy cửa sổ hiện tại bạn đang ở Java và sau đó giảm thiểu và đưa ra trước?
  2. Có một cơ chế trong Java có thể cho phép tôi chỉ hiển thị biểu tượng trong một hoặc hai giây và sau đó ẩn nó ở giữa màn hình? Nếu không, thì cách nào để đạt được điều đó?

Cảm ơn bạn rất nhiều vì đã trả lời.

Trả lời

12

Làm thế nào bạn có thể tìm thấy các cửa sổ hiện tại bạn đang ở trong Java và sau đó de-giảm thiểu nó và mang đến trước

Window[] allWindows = Window.getWindows(); 
  • lợi nhuận mảng của tất cả Top-Level Containers từ JVM hiện ví dụ J/Frame, J/Dialog (JOptionPane), J/Window,

  • bạn có thể để kiểm tra (ví dụ) if (allWindows[i] instanceof JFrame) {

  • sau đó WindowState trở WindowEvent

bằng cách đưa lên cửa sổ phía trước và sau đó nhấp vào biểu tượng trên màn hình cho người dùng

sử dụng undecodated JDialog (chỉ hoạt động toFront, toBack) với

  • tạo chỉ một lần thời gian

  • setDefaultCloseOperations(HIDE_ON_CLOSE)

  • sử dụng Swing Timer cho hide JDialog

Có một cơ chế trong Java có thể cho phép tôi chỉ hiển thị biểu tượng trong một hoặc hai giây và sau đó ẩn nó, ở giữa màn hình? Nếu không, thì cách nào để đạt được điều đó?

  • có nhìn vào Java Translucent Window, đặt ở đó Icon đến JLabel (hoặc đến JButton)

sử dụng Swing Timer cho nhấp nháy bằng cách ẩn Icon hoặc swithing bewtween hai hoặc nhiều Icons (ba hoặc bốn là tốt)

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