|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.awt.Component java.awt.Container java.awt.Window javax.swing.JWindow
public class JWindow
JWindow
是一個容器,可以顯示在使用者桌面上的任何位置。它沒有標題欄、視窗管理按鈕或者其他與 JFrame
關聯的修飾,但它仍然是使用者桌面的“一類別居民”,可以存在於桌面上的任何位置。
JWindow
元件包含一個 JRootPane
作為其僅有的子元件。contentPane
應為 JWindow
的所有子視窗的父視窗。作為一個便捷的 add
及其變體,remove
和 setLayout
已被覆寫並根據需要轉發到 contentPane
。這意味著您可以寫入:
window.add(child);該子視窗也被添加到 contentPane。
contentPane
將始終為非 null
。嘗試將其設置為 null
將導致 JWindow
拋出異常。預設的 contentPane
將在其上設置 BorderLayout
管理器。有關添加、刪除和設置 JWindow
的 LayoutManager
的詳細資訊,請參閱 RootPaneContainer
。
有關 contentPane
、glassPane
和 layeredPane
元件的完整描述,請參閱 JRootPane
文檔。
在多螢幕環境中,可以在不同的螢幕設備上創建 JWindow
。請參閱 Window
以獲取更多資訊。
警告:Swing 不是執行緒安全的。有關更多資訊,請參閱 Swing's Threading Policy。
警告:此類別的序列化物件與以後的 Swing 版本不相容。當前序列化支持適用於短期存儲,或適用於在運行相同 Swing 版本的應用程序之間進行 RMI(Remote Method Invocation,遠端方法調用)。從 1.4 版本開始,已在 java.beans
套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder
。
JRootPane
巢狀類別摘要 | |
---|---|
protected class |
JWindow.AccessibleJWindow
此類別實作對 JWindow 類別的可存取性支持。 |
從類別 java.awt.Window 繼承的巢狀類別/介面 |
---|
Window.AccessibleAWTWindow |
從類別 java.awt.Container 繼承的巢狀類別/介面 |
---|
Container.AccessibleAWTContainer |
從類別 java.awt.Component 繼承的巢狀類別/介面 |
---|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy |
欄位摘要 | |
---|---|
protected AccessibleContext |
accessibleContext
可存取的上下文屬性。 |
protected JRootPane |
rootPane
管理此框架的 contentPane 和可選 menuBar 以及 glassPane 的 JRootPane 實例。 |
protected boolean |
rootPaneCheckingEnabled
如果為 true,則對 add 和 setLayout 的調用將轉發到 contentPane 。 |
從類別 java.awt.Component 繼承的欄位 |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
從介面 java.awt.image.ImageObserver 繼承的欄位 |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
建構子摘要 | |
---|---|
JWindow()
創建未指定所有者的視窗。 |
|
JWindow(Frame owner)
使用指定的所有者框架創建視窗。 |
|
JWindow(GraphicsConfiguration gc)
使用螢幕設備的指定 GraphicsConfiguration 創建視窗。 |
|
JWindow(Window owner)
使用指定的所有者視窗創建視窗。 |
|
JWindow(Window owner,
GraphicsConfiguration gc)
使用螢幕設備的指定所有者視窗和 GraphicsConfiguration 創建視窗。 |
方法摘要 | |
---|---|
protected void |
addImpl(Component comp,
Object constraints,
int index)
添加指定的子 Component 。 |
protected JRootPane |
createRootPane()
由該建構子調用以創建預設的 rootPane 。 |
AccessibleContext |
getAccessibleContext()
獲取與此 JWindow 關聯的 AccessibleContext。 |
Container |
getContentPane()
返回作為此視窗的 contentPane 的 Container 。 |
Component |
getGlassPane()
返回此視窗的 glassPane Component 。 |
Graphics |
getGraphics()
為元件創建一個圖形上下文。 |
JLayeredPane |
getLayeredPane()
返回此視窗的 layeredPane 物件。 |
JRootPane |
getRootPane()
返回此視窗的 rootPane 物件。 |
TransferHandler |
getTransferHandler()
獲取 transferHandler 屬性。 |
protected boolean |
isRootPaneCheckingEnabled()
返回對 add 和 setLayout 的調用是否轉發到 contentPane 。 |
protected String |
paramString()
返回此 JWindow 的字元串表示形式。 |
void |
remove(Component comp)
從該容器中移除指定元件。 |
void |
repaint(long time,
int x,
int y,
int width,
int height)
在 time 毫秒內重繪此元件的指定矩形區域。 |
void |
setContentPane(Container contentPane)
設置此視窗的 contentPane 屬性。 |
void |
setGlassPane(Component glassPane)
設置 glassPane 屬性。 |
void |
setLayeredPane(JLayeredPane layeredPane)
設置 layeredPane 屬性。 |
void |
setLayout(LayoutManager manager)
設置 LayoutManager 。 |
protected void |
setRootPane(JRootPane root)
設置此視窗的新 rootPane 物件。 |
protected void |
setRootPaneCheckingEnabled(boolean enabled)
設置對 add 和 setLayout 的調用是否轉發到 contentPane 。 |
void |
setTransferHandler(TransferHandler newHandler)
設置 transferHandler 屬性,該屬性是支持將資料傳輸到此元件的機制。 |
void |
update(Graphics g)
調用 paint(g) 。 |
protected void |
windowInit()
由該建構子調用以正確初始化 JWindow 。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
欄位詳細資訊 |
---|
protected JRootPane rootPane
contentPane
和可選 menuBar
以及 glassPane
的 JRootPane
實例。
getRootPane()
,
setRootPane(javax.swing.JRootPane)
protected boolean rootPaneCheckingEnabled
add
和 setLayout
的調用將轉發到 contentPane
。其最初設置為 false,但在建構 JWindow
時將被設置為 true。
isRootPaneCheckingEnabled()
,
setRootPaneCheckingEnabled(boolean)
,
RootPaneContainer
protected AccessibleContext accessibleContext
建構子詳細資訊 |
---|
public JWindow()
此建構子將元件的區域屬性設置為 JComponent.getDefaultLocale
返回的值。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless()
返回 true。GraphicsEnvironment.isHeadless()
,
Window.isFocusableWindow()
,
JComponent.getDefaultLocale()
public JWindow(GraphicsConfiguration gc)
GraphicsConfiguration
創建視窗。此視窗不可獲得焦點。
此建構子將元件的區域屬性設置為 JComponent.getDefaultLocale
返回的值。
gc
- 用以建構新視窗的 GraphicsConfiguration
;如果 gc 為 null
,則假定系統預設的 GraphicsConfiguration
HeadlessException
- 如果 GraphicsEnvironment.isHeadless()
返回 true。
IllegalArgumentException
- 如果 gc
不是來自螢幕設備。GraphicsEnvironment.isHeadless()
,
Window.isFocusableWindow()
,
JComponent.getDefaultLocale()
public JWindow(Frame owner)
owner
為 null
,則使用共享所有者,而且此視窗不可獲得焦點。而且,只有其所有者正顯示在螢幕上時此視窗才可獲得焦點。
此建構子將元件的 locale 屬性設置為 JComponent.getDefaultLocale
返回的值。
owner
- 從中顯示該視窗的框架
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true。GraphicsEnvironment.isHeadless()
,
Window.isFocusableWindow()
,
JComponent.getDefaultLocale()
public JWindow(Window owner)
owner
為 null
,則使用共享所有者,而且此視窗不可獲得焦點。
此建構子將元件的 locale 屬性設置為 JComponent.getDefaultLocale
返回的值。
owner
- 從中顯示該視窗的視窗
HeadlessException
- 如果 GraphicsEnvironment.isHeadless()
返回 true。GraphicsEnvironment.isHeadless()
,
Window.isFocusableWindow()
,
JComponent.getDefaultLocale()
public JWindow(Window owner, GraphicsConfiguration gc)
GraphicsConfiguration
創建視窗。如果 owner
為 null
,則使用共享所有者,而且此視窗不可獲得焦點。
此建構子將元件的 locale 屬性設置為 JComponent.getDefaultLocale
返回的值。
owner
- 從中顯示該視窗的視窗gc
- 用以建構新視窗的 GraphicsConfiguration
;如果 gc 為 null
,則假定系統預設的 GraphicsConfiguration
,除非 owner
也為 null,在此情況下將使用來自共享所有者框架的 GraphicsConfiguration
。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless()
返回 true。
IllegalArgumentException
- 如果 gc
不是來自螢幕設備。GraphicsEnvironment.isHeadless()
,
Window.isFocusableWindow()
,
JComponent.getDefaultLocale()
方法詳細資訊 |
---|
protected void windowInit()
JWindow
。
protected JRootPane createRootPane()
rootPane
。
protected boolean isRootPaneCheckingEnabled()
add
和 setLayout
的調用是否轉發到 contentPane
。
add
和 setLayout
被轉發,則返回 true;否則返回 falseaddImpl(java.awt.Component, java.lang.Object, int)
,
setLayout(java.awt.LayoutManager)
,
setRootPaneCheckingEnabled(boolean)
,
RootPaneContainer
public void setTransferHandler(TransferHandler newHandler)
transferHandler
屬性,該屬性是支持將資料傳輸到此元件的機制。如果該元件不支持資料傳輸操作,則使用 null
。
如果系統屬性 suppressSwingDropSupport
為 false
(預設值),並且此元件上的當前放置目標為 null
或者不是使用者設置的放置目標,那麼此方法將按以下方式更改放置目標:如果 newHandler
為 null
,則它將清除放置目標。如果不為 null
,則它將安裝一個新 DropTarget
。
註:當用於 JWindow
時,TransferHandler
只提供資料導入功能,與資料導出有關的方法當前用於 JComponent
。
有關更多資訊,請參閱 The Java Tutorial 中的 How to Use Drag and Drop and Data Transfer 一節。
newHandler
- 新 TransferHandler
TransferHandler
,
getTransferHandler()
,
Component.setDropTarget(java.awt.dnd.DropTarget)
public TransferHandler getTransferHandler()
transferHandler
屬性。
transferHandler
屬性的值TransferHandler
,
setTransferHandler(javax.swing.TransferHandler)
public void update(Graphics g)
paint(g)
。此方法已被覆寫以防止因不必要的調用而清除背景。
Container
中的 update
g
- 要在其中進行繪製的 Graphics
上下文Component.update(Graphics)
protected void setRootPaneCheckingEnabled(boolean enabled)
add
和 setLayout
的調用是否轉發到 contentPane
。
enabled
- 如果 add
和 setLayout
被轉發,則為 true;如果應直接在 JWindow
上操作,則為 false。addImpl(java.awt.Component, java.lang.Object, int)
,
setLayout(java.awt.LayoutManager)
,
isRootPaneCheckingEnabled()
,
RootPaneContainer
protected void addImpl(Component comp, Object constraints, int index)
Component
。覆寫此方法以有條件地轉發對 contentPane
的調用。預設情況下,子元件被添加到 contentPane
而非框架,請參閱 RootPaneContainer
以獲取詳細資訊。
Container
中的 addImpl
comp
- 要增強的元件constraints
- 要考慮的限制index
- 索引
IllegalArgumentException
- 如果 index
無效
IllegalArgumentException
- 如果將容器的父級添加到自身
IllegalArgumentException
- 如果將一個視窗添加到視窗setRootPaneCheckingEnabled(boolean)
,
RootPaneContainer
public void remove(Component comp)
comp
不是 rootPane
,這將把該調用轉發到 contentPane
。如果 comp
不是 JWindow
或 contentPane
的子物件,將不會執行任何操作。
Container
中的 remove
comp
- 要移除的元件
NullPointerException
- 如果 comp
為 nullContainer.add(java.awt.Component)
,
RootPaneContainer
public void setLayout(LayoutManager manager)
LayoutManager
。覆寫以有條件地將調用轉發到 contentPane
。有關更多資訊,請參閱 RootPaneContainer
。
Container
中的 setLayout
manager
- LayoutManager
setRootPaneCheckingEnabled(boolean)
,
RootPaneContainer
public JRootPane getRootPane()
rootPane
物件。
RootPaneContainer
中的 getRootPane
rootPane
屬性setRootPane(javax.swing.JRootPane)
,
RootPaneContainer.getRootPane()
protected void setRootPane(JRootPane root)
rootPane
物件。此方法由建構子調用。
root
- 新的 rootPane
屬性getRootPane()
public Container getContentPane()
contentPane
的 Container
。
RootPaneContainer
中的 getContentPane
contentPane
屬性setContentPane(java.awt.Container)
,
RootPaneContainer.getContentPane()
public void setContentPane(Container contentPane)
contentPane
屬性。此方法由建構子調用。
RootPaneContainer
中的 setContentPane
contentPane
- 新的 contentPane
IllegalComponentStateException
- (運行時異常)如果內容窗格參數為 null
getContentPane()
,
RootPaneContainer.setContentPane(java.awt.Container)
public JLayeredPane getLayeredPane()
layeredPane
物件。
RootPaneContainer
中的 getLayeredPane
layeredPane
屬性setLayeredPane(javax.swing.JLayeredPane)
,
RootPaneContainer.getLayeredPane()
public void setLayeredPane(JLayeredPane layeredPane)
layeredPane
屬性。此方法由建構子調用。
RootPaneContainer
中的 setLayeredPane
layeredPane
- 新的 layeredPane
物件
IllegalComponentStateException
- (運行時異常)如果內容窗格參數為 null
getLayeredPane()
,
RootPaneContainer.setLayeredPane(javax.swing.JLayeredPane)
public Component getGlassPane()
glassPane Component
。
RootPaneContainer
中的 getGlassPane
glassPane
屬性setGlassPane(java.awt.Component)
,
RootPaneContainer.getGlassPane()
public void setGlassPane(Component glassPane)
glassPane
屬性。此方法由建構子調用。
RootPaneContainer
中的 setGlassPane
glassPane
- 此視窗的 glassPane
物件getGlassPane()
,
RootPaneContainer.setGlassPane(java.awt.Component)
public Graphics getGraphics()
null
。
Component
中的 getGraphics
null
Component.paint(java.awt.Graphics)
public void repaint(long time, int x, int y, int width, int height)
time
毫秒內重繪此元件的指定矩形區域。有關如何處理重繪的細節,請參閱 RepaintManager
。
Component
中的 repaint
time
- 更新前等待的最長時間(以毫秒為單位)x
- x 坐標y
- y 坐標width
- 寬度height
- 高度RepaintManager
protected String paramString()
JWindow
的字元串表示形式。此方法僅在進行除錯的時候使用,對於各個實作,所返回字元串的內容和格式可能有所不同。返回的字元串可能為空,但不可能為 null
。
Container
中的 paramString
JWindow
的字元串表示形式public AccessibleContext getAccessibleContext()
Accessible
中的 getAccessibleContext
Window
中的 getAccessibleContext
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。