2011-09-09 40 views
7

Sự khác nhau giữa các chức năng khung Java getContentPane()getRootPane() là gì? Ngoài ra điều gì sẽ xảy ra khi chúng tôi đặt JButton làm Mặc định.Sự khác nhau giữa JFrame.getContentPane() và JFrame.getRootPane() là gì?

+0

Bạn có câu trả lời tôi thấy. Hãy nhớ rằng, may mắn thay, hầu hết thời gian bạn sẽ không cần phải nhận được những Panes. Ví dụ, trong phiên bản trước của Java (Ai đó biết phiên bản chính xác?) Bạn cần thêm các thành phần của JFrame.getRootPane (...) bây giờ chỉ cần JFrame.Add (...) là đủ. – Mohayemin

Trả lời

4

Trong khi sử dụng container cấp cao nhất trong AWT hoặc Swing, khung gốc là khung cơ bản.

Các hệ thống phân cấp như sau:

  1. Glass Pane: Nói chung ẩn, thiết lập để có thể nhìn thấy sẽ hiển thị một trang bìa kính so với khu vực cửa sổ gốc.
  2. Ngăn xếp lớp: Chứa Menubar và Ngăn nội dung
  3. Ngăn nội dung: Ngăn bố cục cơ bản trong đó các thành phần thực sự được đặt.

Gọi phương thức getRootPane() sẽ trả về tham chiếu đến khung cơ sở, trong khi gọi phương thức getContentPane() sẽ giúp bạn tham chiếu đến Ngăn nội dung. Nó được hiển thị theo mặc định.

Bằng cách đặt mặc định Jbutton, bạn chính xác đang cố gắng làm gì?

+0

venomrld, Thanx tôi đã có ans của tôi những gì tôi muốn ..... bt có một lần nữa một cửa kính mà tôi không thể hiểu nhiều bạn có thể cho tôi biết abt Glass Pane? –

+0

root.setDefaultButton() –

+0

Một cách sử dụng cụ thể của glasspane là thêm hoặc vẽ một khu vực cụ thể trên Khung đã chứa các thành phần. Đặc biệt hữu ích nếu bạn cần thêm các thành phần hoặc vẽ lại mà không làm phiền bố cục hiện tại. – venomrld

11

từ documentation:

getContentPane() thường được thực hiện như thế này:

public Container getContentPane() { 
    return getRootPane().getContentPane(); 
} 

Nó được mô tả tốt trong Swing hướng dẫn (here).

enter image description here

+0

Thanx Michal, thông tin bạn vừa đưa ra thực sự rất hữu ích cho bt tôi muốn biết họ đại diện cho cái gì ??? –

0

Ngăn gốc, như tên của nó, là gốc của khung/cửa sổ/hộp thoại.

Nó chứa als các thành phần khác của thành phần cấp cao nhất này. ngăn nội dung là một trong bốn phần của ngăn gốc và chứa các thành phần. các phần khác của ngăn gốc là ngăn kính, ngăn xếp lớp và thanh menu tùy chọn.

các hướng dẫn tại oracle giải thích điều này thực sự tốt: http://download.oracle.com/javase/tutorial/uiswing/components/rootpane.html

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