Class JFrame

Class JFrame

方法详细信息

frameInit protected void frameInit()

由构造函数调用以正确初始化

JFrame 。

createRootPane protected JRootPane createRootPane()

由构造方法调用以创建默认值

rootPane 。

结果

一个新的

JRootPane

processWindowEvent protected void processWindowEvent​(WindowEvent e)

处理在此组件上发生的窗口事件。

隐藏窗口或处理窗口,由defaultCloseOperation属性的设置指定。

重写:

processWindowEvent在类

Window

参数

e - 窗口事件

另请参见:

setDefaultCloseOperation(int) ,

Window.processWindowEvent(java.awt.event.WindowEvent)

setDefaultCloseOperation @BeanProperty(preferred=true,

enumerationValues={"WindowConstants.DO_NOTHING_ON_CLOSE","WindowConstants.HIDE_ON_CLOSE","WindowConstants.DISPOSE_ON_CLOSE","WindowConstants.EXIT_ON_CLOSE"},

description="The frame\'s default close operation.")

public void setDefaultCloseOperation​(int operation)

设置当用户在此帧上启动“关闭”时默认发生的操作。

您必须指定以下选项之一:

DO_NOTHING_ON_CLOSE (在WindowConstants定义):不要做任何事情; 要求程序处理已注册WindowListener对象的windowClosing方法中的操作。

HIDE_ON_CLOSE (在WindowConstants定义):在调用任何已注册的WindowListener对象后自动隐藏框架。

DISPOSE_ON_CLOSE (在WindowConstants定义):在调用任何已注册的WindowListener对象后自动隐藏和处置框架。

EXIT_ON_CLOSE (在WindowConstants定义):使用System exit方法退出应用程序。 仅在应用程序中使用它。

默认情况下,该值设置为HIDE_ON_CLOSE 。 对此属性值的更改会导致触发属性更改事件,属性名称为“defaultCloseOperation”。

注意 :当Java虚拟机(VM)中的最后一个可显示窗口被丢弃时,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)

getDefaultCloseOperation public int getDefaultCloseOperation()

返回用户在此帧上启动“关闭”时发生的操作。

结果

一个表示窗口关闭操作的整数

另请参见:

setDefaultCloseOperation(int)

setTransferHandler @BeanProperty(hidden=true,

description="Mechanism for transfer of data into the component")

public void setTransferHandler​(TransferHandler newHandler)

设置transferHandler属性,这是一种支持将数据传输到此组件的机制。

如果组件不支持数据传输操作,请使用null 。

如果系统属性suppressSwingDropSupport是false (缺省值),该组件上的当前放置目标为null或不是一个用户设置的放置目标,该方法将改变放置目标如下:如果newHandler是null它将清除降目标。 如果不是null ,它将安装新的DropTarget 。

注意:当与JFrame TransferHandler使用时, TransferHandler仅提供数据导入功能,因为数据导出相关方法当前键入JComponent 。

有关详细信息,请参阅“Java教程”中的 How to Use Drag and Drop and Data Transfer部分。

参数

newHandler - 新的

TransferHandler

从以下版本开始:

1.6

另请参见:

TransferHandler , getTransferHandler() , Component.setDropTarget(java.awt.dnd.DropTarget)

getTransferHandler public TransferHandler getTransferHandler()

获取

transferHandler属性。

结果

transferHandler属性的值

从以下版本开始:

1.6

另请参见:

TransferHandler , setTransferHandler(javax.swing.TransferHandler)

update public void update​(Graphics g)

只需致电paint(g) 。

重写此方法是为了防止不必要的调用来清除背景。

重写:

update ,类

Container

参数

g - 要绘制的Graphics上下文

另请参见:

Component.update(Graphics)

setJMenuBar @BeanProperty(bound=false,

hidden=true,

description="The menubar for accessing pulldown menus from this frame.")

public void setJMenuBar​(JMenuBar menubar)

设置此框架的菜单栏。

参数

menubar - 将菜单栏放置在框架中

另请参见:

getJMenuBar()

getJMenuBar public JMenuBar getJMenuBar()

返回此框架上设置的菜单栏。

结果

这个框架的菜单栏

另请参见:

setJMenuBar(javax.swing.JMenuBar)

isRootPaneCheckingEnabled protected boolean isRootPaneCheckingEnabled()

返回对

add和

setLayout调用是否转发到

contentPane 。

结果

如果转发add和add , setLayout true;

否则是假的

另请参见:

addImpl(java.awt.Component, java.lang.Object, int) , setLayout(java.awt.LayoutManager) , setRootPaneCheckingEnabled(boolean) , RootPaneContainer

setRootPaneCheckingEnabled @BeanProperty(hidden=true,

description="Whether the add and setLayout methods are forwarded")

protected void setRootPaneCheckingEnabled​(boolean enabled)

设置是否将

add和

setLayout呼叫转发到

contentPane 。

参数

enabled - 如果转发

add和

setLayout true,如果它们应直接在

JFrame上运行,

JFrame 。

另请参见:

addImpl(java.awt.Component, java.lang.Object, int) , setLayout(java.awt.LayoutManager) , isRootPaneCheckingEnabled() , RootPaneContainer

addImpl protected void addImpl​(Component comp,

Object constraints,

int index)

添加指定的子项Component 。

重写此方法可有条件地将调用转发到contentPane 。

默认情况下,子项将添加到contentPane而不是帧中,有关详细信息,请参阅RootPaneContainer 。

重写:

addImpl类

Container

参数

comp - 要增强的组件

constraints - 要遵守的约束

index - 索引

异常

IllegalArgumentException - 如果

index无效

IllegalArgumentException - 如果将容器的父级添加到自身

IllegalArgumentException - 如果向容器添加窗口

另请参见:

setRootPaneCheckingEnabled(boolean) , RootPaneContainer

remove public void remove​(Component comp)

从容器中删除指定的组件。

如果comp不是rootPane ,则会将呼叫转发至contentPane 。

如果comp不是JFrame或contentPane的子级,则contentPane 。

重写:

remove在类

Container

参数

comp - 要删除的组件

异常

NullPointerException - 如果

comp为空

另请参见:

Container.add(java.awt.Component) , RootPaneContainer

setLayout public void setLayout​(LayoutManager manager)

设置LayoutManager 。

重写以有条件地将呼叫转发至contentPane 。

有关更多信息,请参阅RootPaneContainer 。

重写:

setLayout类

Container

参数

manager -

LayoutManager

另请参见:

setRootPaneCheckingEnabled(boolean) , RootPaneContainer

getRootPane @BeanProperty(bound=false,

hidden=true,

description="the RootPane object for this frame.")

public JRootPane getRootPane()

返回此帧的

rootPane对象。

Specified by:

getRootPane ,接口

RootPaneContainer

结果

rootPane财产

另请参见:

setRootPane(javax.swing.JRootPane) ,

RootPaneContainer.getRootPane()

setRootPane protected void setRootPane​(JRootPane root)

设置rootPane属性。

构造函数调用此方法。

参数

root - 此帧的

rootPane对象

另请参见:

getRootPane()

getContentPane public Container getContentPane()

返回此帧的

contentPane对象。

Specified by:

getContentPane ,接口

RootPaneContainer

结果

contentPane财产

另请参见:

setContentPane(java.awt.Container) ,

RootPaneContainer.getContentPane()

setContentPane @BeanProperty(bound=false,

hidden=true,

description="The client area of the frame where child components are normally inserted.")

public void setContentPane​(Container contentPane)

设置contentPane属性。

构造函数调用此方法。

Swing的绘画架构在包含层次结构中需要不透明的JComponent 。 这通常由内容窗格提供。 如果更换内容窗格,建议您使用不透明的JComponent替换它。

Specified by:

setContentPane ,接口

RootPaneContainer

参数

contentPane - 此帧的

contentPane对象

异常

IllegalComponentStateException - (运行时异常),如果内容窗格参数为

null

另请参见:

getContentPane() , RootPaneContainer.setContentPane(java.awt.Container) , JRootPane

getLayeredPane public JLayeredPane getLayeredPane()

返回此帧的

layeredPane对象。

Specified by:

getLayeredPane ,接口

RootPaneContainer

结果

layeredPane财产

另请参见:

setLayeredPane(javax.swing.JLayeredPane) ,

RootPaneContainer.getLayeredPane()

setLayeredPane @BeanProperty(bound=false,

hidden=true,

description="The pane that holds the various frame layers.")

public void setLayeredPane​(JLayeredPane layeredPane)

设置layeredPane属性。

构造函数调用此方法。

Specified by:

setLayeredPane在接口

RootPaneContainer

参数

layeredPane - 此帧的

layeredPane对象

异常

IllegalComponentStateException - (运行时异常),如果分层窗格参数为

null

另请参见:

getLayeredPane() ,

RootPaneContainer.setLayeredPane(javax.swing.JLayeredPane)

getGlassPane public Component getGlassPane()

返回此帧的

glassPane对象。

Specified by:

getGlassPane ,接口

RootPaneContainer

结果

glassPane属性

另请参见:

setGlassPane(java.awt.Component) ,

RootPaneContainer.getGlassPane()

setGlassPane @BeanProperty(bound=false,

hidden=true,

description="A transparent pane used for menu rendering.")

public void setGlassPane​(Component glassPane)

设置glassPane属性。

构造函数调用此方法。

Specified by:

setGlassPane在

RootPaneContainer

参数

glassPane - 此帧的

glassPane对象

另请参见:

getGlassPane() ,

RootPaneContainer.setGlassPane(java.awt.Component)

getGraphics @BeanProperty(bound=false)

public Graphics getGraphics()

为此组件创建图形上下文。

如果此组件当前不可显示,则此方法将返回null 。

重写:

getGraphics在

Component类

结果

此组件的图形上下文,如果没有,

null

从以下版本开始:

1.6

另请参见:

Component.paint(java.awt.Graphics)

repaint public void repaint​(long time,

int x,

int y,

int width,

int height)

在time毫秒内重新绘制此组件的指定矩形。

有关如何处理重绘的详细信息,请参阅RepaintManager 。

重写:

repaint类

Component

参数

time - 更新前的最长时间(以毫秒为单位)

x -

x坐标

y -

y坐标

width - 宽度

height - 身高

从以下版本开始:

1.6

另请参见:

RepaintManager

setDefaultLookAndFeelDecorated public static void setDefaultLookAndFeelDecorated​(boolean defaultLookAndFeelDecorated)

提供关于新创建的JFrame是否应具有当前外观提供的窗口装饰(例如边框,窗口关闭窗口的小部件,标题...)的提示。

如果defaultLookAndFeelDecorated为真,则当前LookAndFeel支持提供窗口装饰,当前窗口管理器支持未修饰的窗口,然后新创建的JFrame将具有当前LookAndFeel提供的窗口装饰。

否则,新创建的JFrame将由当前窗口管理器提供其窗口装饰。

通过执行以下操作,您可以在单个JFrame上获得相同的效果:

JFrame frame = new JFrame();

frame.setUndecorated(true);

frame.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);

参数

defaultLookAndFeelDecorated - 关于当前外观是否应提供窗户装饰的提示

从以下版本开始:

1.4

另请参见:

LookAndFeel.getSupportsWindowDecorations()

isDefaultLookAndFeelDecorated public static boolean isDefaultLookAndFeelDecorated()

如果新创建的JFrame应该具有由当前外观提供的Window装饰,则返回true。

这只是一个提示,因为某些外观可能不支持此功能。

结果

如果外观应该提供Window装饰,则为true。

从以下版本开始:

1.4

paramString protected String paramString()

返回此JFrame的字符串表示JFrame 。

此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。

返回的字符串可能为空,但可能不是null 。

重写:

paramString类

Frame

结果

JFrame的字符串表示

JFrame

getAccessibleContext public AccessibleContext getAccessibleContext()

获取与此JFrame关联的AccessibleContext。

对于JFrame,AccessibleContext采用AccessibleJFrame的形式。

如有必要,将创建一个新的AccessibleJFrame实例。

Specified by:

getAccessibleContext在

Accessible接口中

重写:

getAccessibleContext类

Frame

结果

一个AccessibleJFrame,用作此JFrame的AccessibleContext

🔮 相关作品