2009-01-16 26 views
5

Tôi có một Thành phần mà tôi đang sử dụng cả trong một ứng dụng Java độc lập cũng như trong một ứng dụng Java. Làm thế nào tôi có thể tìm ra từ bên trong Component cho dù thành phần của tôi có nằm trong applet không?Làm cách nào để biết thành phần Java của tôi có nằm trong một Applet không?

Ngoài ra, một khi tôi tìm ra rằng tôi đang chạy trong một Applet, làm thế nào tôi có thể truy cập vào Applet?

Trả lời

2

Tôi nghĩ bạn có thể làm điều đó bằng cách liên tục gọi số Component.getParent() cho đến khi bạn lên đến đỉnh của cây chứa và sau đó kiểm tra xem vùng chứa đó có phải là instanceof Applet hay không.

Đoạn code dưới đây là hoàn toàn chưa được kiểm tra:

boolean isInAnApplet(Component c) 
{ 
    Component p = c.getParent(); 
    if (p != null) { 
     return isInAnApplet(p); 
    } else { 
     return (c instanceof Applet); 
    } 
} 
Các vấn đề liên quan