public class JFrame extends Frame implements WindowConstants, Accessible, RootPaneContainer
java.awt.Frame JFC/Swing组件体系结构支持。你可以找到面向任务的文档中使用
JFrame java教程,在部分
How to Make Frames。
的JFrame类与Frame略有不符。像所有其他JFC/Swing顶层容器,一个JFrame包含JRootPane作为其唯一的孩子。由根窗格提供内容面板应作为一项规则,包含所有的非菜单组件的JFrame显示。这不同于AWT Frame案例。作为一个方便的add,remove,和这类setLayout方法被重写,所以,他们的ContentPane委托调用相应的方法。例如,你可以添加一个组件到一个框架如下:
框架。添加(子);和孩子将被添加到内容块。内容窗格将始终是非空的。试图将它设置为零会导致JFrame抛出一个异常。默认内容窗格将有BorderLayout经理了。详情请参阅添加
RootPaneContainer,拆卸和设置一个
JFrame的
LayoutManager。
不像Frame,一JFrame有一些概念,如何回应当用户试图关闭窗口。默认行为是隐藏的iframe当用户关闭窗口。改变默认的行为,你调用的方法setDefaultCloseOperation(int)。让JFrame表现为一个Frame实例相同,使用setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE)。
更多信息在内容面板和其他功能,根窗格提供,看到在java教程Using Top-Level Containers。
在多屏幕环境中,您可以创建一个不同的屏幕设备JFrame。更多信息见Frame。
警告: Swing是线程不安全的。更多信息见Swing's Threading Policy。
警告:序列化该类的对象与以后的Swing版本不兼容。当前的序列化支持适用于短期贮藏或RMI运行相同Swing版本的应用程序之间。为1.4,为所有JavaBeans™长期存储的支持已被添加到java.beans包。请看XMLEncoder。
| Modifier and Type | Class and Description |
|---|---|
protected class |
JFrame.AccessibleJFrame
这个类实现了对
JFrame类可访问性支持。
|
Frame.AccessibleAWTFrameWindow.AccessibleAWTWindow, Window.TypeContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| Modifier and Type | Field and Description |
|---|---|
protected AccessibleContext |
accessibleContext
可访问的上下文属性。
|
static int |
EXIT_ON_CLOSE
退出应用程序默认窗口关闭操作。
|
protected JRootPane |
rootPane
JRootPane实例的管理
contentPane和可选的
menuBar这个框架,以及
glassPane。
|
protected boolean |
rootPaneCheckingEnabled
如果真的那么叫
add和
setLayout将被转发到
contentPane。
|
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSORBOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTDISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSEABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description |
|---|
JFrame()
构建一个最初是看不见的新框架。
|
JFrame(GraphicsConfiguration gc)
创建指定的
GraphicsConfiguration屏幕的装置和一个
Frame空白标题。
|
JFrame(String title)
创建一个新的开始是看不到的
Frame指定标题的。
|
JFrame(String title, GraphicsConfiguration gc)
创建一个具有指定名称和指定的
GraphicsConfiguration屏幕的设备
JFrame。
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addImpl(Component comp, Object constraints, int index)
添加指定的孩子
Component。
|
protected JRootPane |
createRootPane()
通过构造函数的方法来创建默认
rootPane。
|
protected void |
frameInit()
通过构造函数来初始化
JFrame正确。
|
AccessibleContext |
getAccessibleContext()
获取与该功能相关的accessiblecontext。
|
Container |
getContentPane()
返回此框架的
contentPane对象。
|
int |
getDefaultCloseOperation()
返回当用户在这个框架上启动一个“关闭”时发生的操作。
|
Component |
getGlassPane()
返回此框架的
glassPane对象。
|
Graphics |
getGraphics()
为该组件创建一个图形上下文。
|
JMenuBar |
getJMenuBar()
返回设置该帧菜单。
|
JLayeredPane |
getLayeredPane()
返回此框架的
layeredPane对象。
|
JRootPane |
getRootPane()
返回此框架的
rootPane对象。
|
TransferHandler |
getTransferHandler()
得到
transferHandler财产。
|
static boolean |
isDefaultLookAndFeelDecorated()
如果新创建的
JFrames应该有他们的窗户装饰的目前看提供感觉返回true。
|
protected boolean |
isRootPaneCheckingEnabled()
返回是否调用
add和
setLayout转发给
contentPane。
|
protected String |
paramString()
返回该
JFrame字符串表示形式。
|
protected void |
processWindowEvent(WindowEvent e)
处理此组件上发生的窗口事件。
|
void |
remove(Component comp)
从容器中移除指定的组件。
|
void |
repaint(long time, int x, int y, int width, int height)
重画指定矩形的这一部分在
time毫秒。
|
void |
setContentPane(Container contentPane)
集
contentPane财产。
|
void |
setDefaultCloseOperation(int operation)
设置默认情况下,当用户在这个框架上启动一个“关闭”时将发生的操作。
|
static void |
setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated)
提供一个提示是否新建
JFrames应该有自己的窗口装饰(如边界、窗口关闭窗口,标题…)由目前看和感觉。
|
void |
setGlassPane(Component glassPane)
集
glassPane财产。
|
void |
setIconImage(Image image)
设置要显示为该窗口的图标的图像。
|
void |
setJMenuBar(JMenuBar menubar)
设置此框菜单栏。
|
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)。
|
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecoratedaddPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFrontadd, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetFont, postEventpublic static final int EXIT_ON_CLOSE
SecurityException。建议您仅在应用程序中使用此。
protected JRootPane rootPane
JRootPane实例的管理
contentPane和可选的
menuBar这个框架,以及
glassPane。
JRootPane,
RootPaneContainer
protected boolean rootPaneCheckingEnabled
add和
setLayout将被转发到
contentPane。这是最初的错误,而是被设置为true时,
JFrame构造。
protected AccessibleContext accessibleContext
public JFrame()
throws HeadlessException
此构造函数设置组件的本地化属性返回的值JComponent.getDefaultLocale。
HeadlessException -如果graphicsenvironment isheadless()返回true。
GraphicsEnvironment.isHeadless(),
Component.setSize(int, int),
Component.setVisible(boolean),
JComponent.getDefaultLocale()
public JFrame(GraphicsConfiguration gc)
GraphicsConfiguration屏幕的装置和一个
Frame空白标题。
此构造函数设置组件的本地化属性返回的值JComponent.getDefaultLocale。
gc -
GraphicsConfiguration是用来构建新的
Frame;如果
gc是
null,系统默认的
GraphicsConfiguration假定
IllegalArgumentException -如果
gc不是从一个屏幕的设备。这个例外总是graphicsenvironment isheadless()返回true时抛出。
GraphicsEnvironment.isHeadless(),
JComponent.getDefaultLocale()
public JFrame(String title) throws HeadlessException
Frame指定标题的。
此构造函数设置组件的本地化属性返回的值JComponent.getDefaultLocale。
title为框架的标题
HeadlessException -如果graphicsenvironment isheadless()返回true。
GraphicsEnvironment.isHeadless(),
Component.setSize(int, int),
Component.setVisible(boolean),
JComponent.getDefaultLocale()
public JFrame(String title, GraphicsConfiguration gc)
GraphicsConfiguration屏幕的设备
JFrame。
此构造函数设置组件的本地化属性返回的值JComponent.getDefaultLocale。
title -标题是在框架的边框显示。一个
null值为空字符串“”。
gc -
GraphicsConfiguration是用来构建新的
JFrame的;如果
gc是
null,系统默认的
GraphicsConfiguration假定
IllegalArgumentException -如果
gc不是从一个屏幕的设备。这个例外总是graphicsenvironment isheadless()返回true时抛出。
GraphicsEnvironment.isHeadless(),
JComponent.getDefaultLocale()
protected void frameInit()
JFrame正确。
protected JRootPane createRootPane()
rootPane。
protected void processWindowEvent(WindowEvent e)
defaultCloseOperation属性设置指定的。
processWindowEvent 方法重写,继承类
Window
e -窗口事件
setDefaultCloseOperation(int),
Window.processWindowEvent(java.awt.event.WindowEvent)
public void setDefaultCloseOperation(int operation)
DO_NOTHING_ON_CLOSE(定义在WindowConstants):不做任何处理;要求程序运行在windowClosing方法注册WindowListener对象。HIDE_ON_CLOSE(定义在WindowConstants):自动隐藏帧后调用任何注册WindowListener对象。DISPOSE_ON_CLOSE(定义在WindowConstants):自动隐藏和处理后的帧调用任何注册WindowListener对象。EXIT_ON_CLOSE(定义在JFrame):退出应用程序使用System exit方法。仅在应用程序中使用。该值被设置为默认HIDE_ON_CLOSE。这个属性的值的属性更改事件引起的放电变化,与属性名称”defaultcloseoperation”。
注:当最后一个显示窗口的java虚拟机(VM)内设置,虚拟机可能会终止。更多信息见 AWT Threading Issues。
operation,应当用户关闭操作的框架
IllegalArgumentException -如果defaultcloseoperation值不是一个以上的有效值
SecurityException -如果
EXIT_ON_CLOSE已指定,
SecurityManager不会允许调用者调用
System.exit
Window.addWindowListener(java.awt.event.WindowListener),
getDefaultCloseOperation(),
WindowConstants,
Runtime.exit(int)
public int getDefaultCloseOperation()
setDefaultCloseOperation(int)
public void setTransferHandler(TransferHandler newHandler)
transferHandler物业,这是一种机制,支持数据为这部分转移。使用
null如果组件不支持数据传输操作。
如果系统性能suppressSwingDropSupport是false(默认),这个元件上的电流下降的目标是null或没有用户设置滴目标,这种方法会改变下降的目标如下:如果newHandler是null将明显下降的目标。如果不null将安装一个新的DropTarget。
注意:当使用JFrame,TransferHandler只提供数据导入功能,为数据与出口相关的方法是目前对JComponent型。
请看 How to Use Drag and Drop and Data Transfer,java教程中的一部分,更多的信息。
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)。该方法被重写以防止不必要的电话清晰的背景。
update 方法重写,继承类
Container
g -图形上下文的油漆
Component.update(Graphics)
public void setJMenuBar(JMenuBar menubar)
menubar -菜单栏放置在框架
getJMenuBar()
public JMenuBar getJMenuBar()
setJMenuBar(javax.swing.JMenuBar)
protected boolean isRootPaneCheckingEnabled()
add和
setLayout转发给
contentPane。
add和
setLayout转发真;否则为false
addImpl(java.awt.Component, java.lang.Object, int),
setLayout(java.awt.LayoutManager),
setRootPaneCheckingEnabled(boolean),
RootPaneContainer
protected void setRootPaneCheckingEnabled(boolean enabled)
add和
setLayout调用转发给
contentPane。
enabled -如果
add和
setLayout转发,假如果他们应该直接在
JFrame操作。
addImpl(java.awt.Component, java.lang.Object, int),
setLayout(java.awt.LayoutManager),
isRootPaneCheckingEnabled(),
RootPaneContainer
protected void addImpl(Component comp, Object constraints, int index)
addImpl 方法重写,继承类
Container
comp -可以提高构件的
constraints -被尊重的约束
index -指数
IllegalArgumentException -如果
index无效
IllegalArgumentException如果添加容器的家长本身
IllegalArgumentException如果增加一个窗口一个容器
setRootPaneCheckingEnabled(boolean),
RootPaneContainer
public void remove(Component comp)
comp不是
rootPane,这将给
contentPane。如果这样会
comp不是的
JFrame或
contentPane孩子做什么。
remove 方法重写,继承类
Container
comp -要移除的组件
NullPointerException -如果
comp是空的
Container.add(java.awt.Component),
RootPaneContainer
public void setLayout(LayoutManager manager)
setLayout 方法重写,继承类
Container
manager -
LayoutManager
setRootPaneCheckingEnabled(boolean),
RootPaneContainer
public JRootPane getRootPane()
rootPane对象。
getRootPane 接口
RootPaneContainer
rootPane财产
setRootPane(javax.swing.JRootPane),
RootPaneContainer.getRootPane()
protected void setRootPane(JRootPane root)
rootPane财产。此方法被构造函数调用。
root -这架
rootPane对象
getRootPane()
public void setIconImage(Image image)
这种方法可以用来代替setIconImages()指定一个图像作为一个窗口的图标。
以下声明:
seticonimage(图像);等价于:
ArrayList
<图像>
图像>,< ImageList =新的ArrayList();ImageList添加(图像);seticonimages(ImageList);
图像>
注:本机窗口系统可以使用不同尺寸不同的图像代表一个窗口,根据上下文(例如窗花、窗口列表、任务栏等)。他们也可以只使用一个单一的图像的所有上下文或没有图像在所有。
setIconImage 方法重写,继承类
Frame
image的图标图像显示。
Window.setIconImages(java.util.List<? extends java.awt.Image>),
Window.getIconImages()
public Container getContentPane()
contentPane对象。
getContentPane 接口
RootPaneContainer
contentPane财产
setContentPane(java.awt.Container),
RootPaneContainer.getContentPane()
public void setContentPane(Container contentPane)
contentPane财产。此方法被构造函数调用。
摆动的绘画结构需要在层次结构不透明的JComponent。这通常是由内容窗格提供的。如果更换建议你用不透明的JComponent替换内容窗格。
setContentPane 接口
RootPaneContainer
contentPane -
contentPane对象框架
IllegalComponentStateException -(运行时异常)如果内容窗格中的参数是
null
getContentPane(),
RootPaneContainer.setContentPane(java.awt.Container),
JRootPane
public JLayeredPane getLayeredPane()
layeredPane对象。
getLayeredPane 接口
RootPaneContainer
layeredPane财产
setLayeredPane(javax.swing.JLayeredPane),
RootPaneContainer.getLayeredPane()
public void setLayeredPane(JLayeredPane layeredPane)
layeredPane财产。此方法被构造函数调用。
setLayeredPane 接口
RootPaneContainer
layeredPane -这架
layeredPane对象
IllegalComponentStateException -(运行时异常)如果参数是
null分层窗格
getLayeredPane(),
RootPaneContainer.setLayeredPane(javax.swing.JLayeredPane)
public Component getGlassPane()
glassPane对象。
getGlassPane 接口
RootPaneContainer
glassPane财产
setGlassPane(java.awt.Component),
RootPaneContainer.getGlassPane()
public void setGlassPane(Component glassPane)
glassPane财产。此方法被构造函数调用。
setGlassPane 接口
RootPaneContainer
glassPane -这架
glassPane对象
getGlassPane(),
RootPaneContainer.setGlassPane(java.awt.Component)
public Graphics getGraphics()
null。
getGraphics 方法重写,继承类
Component
null
Component.paint(java.awt.Graphics)
public void repaint(long time,
int x,
int y,
int width,
int height)
time毫秒。参考
RepaintManager详情如何重新处理。
repaint 方法重写,继承类
Component
time -毫秒最大时间更新前
x的X坐标
y的Y坐标
width -宽度
height -高度
RepaintManager
public static void setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated)
JFrames应该有自己的窗口装饰(如边界、窗口关闭窗口,标题…)由目前看和感觉。如果
defaultLookAndFeelDecorated属实,目前
LookAndFeel支持提供窗户装饰,和当前的窗口管理器支持未装饰的窗户,然后将新创建的
JFrames窗口装饰的
LookAndFeel提供。否则,新创建的
JFrames将窗户装饰由当前的窗口管理器提供。
你可以通过做以下获得一个JFrame一样的效果:
新jframe() JFrame框架=;框架。setundecorated(真的);框架。getrootpane()。setwindowdecorationstyle(jrootpane。框架);
defaultLookAndFeelDecorated -一个提示是否当前的外观和感觉应该提供窗饰
LookAndFeel.getSupportsWindowDecorations()
public static boolean isDefaultLookAndFeelDecorated()
JFrames应该有他们的窗户装饰的目前看提供感觉返回true。这只是一个提示,因为某些外观和感觉可能不支持这个功能。
protected String paramString()
JFrame字符串表示形式。此方法仅用于调试目的,返回的字符串的内容和格式可能会在实现过程中有所不同。返回的字符串是空的但可能不
null。
paramString 方法重写,继承类
Frame
JFrame字符串表示形式
public AccessibleContext getAccessibleContext()
getAccessibleContext 接口
Accessible
getAccessibleContext 方法重写,继承类
Frame
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.