📄 jinternalframe.java
字号:
d.setInternalFrame(this); desktopIcon = d; } /** * This method does nothing because this must be the root of a focus * traversal cycle. * * @param focusCycleRoot Not used. */ public final void setFocusCycleRoot(boolean focusCycleRoot) { // Do nothing } /** * This method sets the Icon to be used in two places. The first is icon * that is painted at the top left corner of the JInternalFrame when it is * not iconified (clicking on that icon will activate the TitlePane * JMenuBar). When the JInternalFrame is iconified, it will be the icon * displayed in the JDesktopIcon. If no icon is set, the JInternalFrame * will use a Look and Feel default. * * @param icon The Icon used in the TitlePane JMenuBar and iconified frames. */ public void setFrameIcon(Icon icon) { if (icon != frameIcon) { Icon old = frameIcon; frameIcon = icon; firePropertyChange(FRAME_ICON_PROPERTY, old, frameIcon); } } /** * This method sets the Glass Pane used with this JInternalFrame. * * @param glass The Glass Pane to use with this JInternalFrame. */ public void setGlassPane(Component glass) { if (glass != getGlassPane()) { Component old = getGlassPane(); getRootPane().setGlassPane(glass); firePropertyChange(GLASS_PANE_PROPERTY, old, glass); } } /** * This method iconifies or deiconifies this JInternalFrame given the * boolean argument. If the JInternalFrame becomes iconified, it will fire * an INTERNAL_FRAME_ICONIFIED event. If the JInternalFrame becomes * deiconified, it will fire anINTERNAL_FRAME_DEICONIFIED event. * * @param b Whether this JInternalFrame is to be iconified or deiconified. * * @throws PropertyVetoException DOCUMENT ME! */ public void setIcon(boolean b) throws PropertyVetoException { if (b != isIcon()) { fireVetoableChange(IS_ICON_PROPERTY, b, isIcon); isIcon = b; firePropertyChange(IS_ICON_PROPERTY, ! isIcon, isIcon); if (b) fireInternalFrameEvent(InternalFrameEvent.INTERNAL_FRAME_ICONIFIED); else fireInternalFrameEvent(InternalFrameEvent.INTERNAL_FRAME_DEICONIFIED); } } /** * This method sets whether the JInternalFrame can be iconified. (This means * that the JInternalFrame can be turned into an icon if minimized). * * @param b Whether the JInternalFrame can be iconified. */ public void setIconifiable(boolean b) { iconable = b; } /** * This method sets the JMenuBar to be used with this JInternalFrame. * * @param b The JMenuBar to be used with this JInternalFrame. */ public void setJMenuBar(JMenuBar b) { getRootPane().setJMenuBar(b); } /** * A helper method that set the layer that this JInternalFrame resides in. * Using this version of the method means that the user should not set it * to values that are already defined in JLayeredPane. If predefined values * are to be used, the user should use the setLayer(Integer) version. * * @param layer The layer to place this JInternalFrame in. */ public void setLayer(int layer) { setLayer(new Integer(layer)); } /** * A helper method that sets the layer that this JInternalFrame resides in. * Calling this version of the method should use layer values that are * already defined in JLayeredPane. * * @param layer The layer to place this JInternalFrame in. */ public void setLayer(Integer layer) { JDesktopPane p = getDesktopPane(); if (p != null) { int pos = p.getPosition(this); p.setLayer(this, layer.intValue(), pos); } } /** * This method sets the JLayeredPane to use with this JInternalFrame. * * @param layered The JLayeredPane to use as a layeredPane. */ public void setLayeredPane(JLayeredPane layered) { if (layered != getLayeredPane()) { JLayeredPane old = getLayeredPane(); getRootPane().setLayeredPane(layered); firePropertyChange(LAYERED_PANE_PROPERTY, old, layered); } } /** * This method sets whether the JInternalFrame can be maximized. * * @param b Whether this JInternalFrame can be maximized. */ public void setMaximizable(boolean b) { maximizable = b; } /** * This method sets the Layout Manager used in the JInternalFrame. SetLayout * should not be called on the JInternalFrame directly. Instead, it should * be called with JInternalFrame.getContentPane().setLayout. Calls to this * method with root pane checking enabled will cause exceptions to be * thrown. * * @param manager The Layout Manager to be used with the JInternalFrame. * * @throws Error If rootPaneChecking is enabled. */ public void setLayout(LayoutManager manager) { // Check if we're in initialization stage. If so, call super.setLayout // otherwise, valid calls go to the content pane. if (isRootPaneCheckingEnabled()) getContentPane().setLayout(manager); else super.setLayout(manager); } /** * This method sets the JInternalFrame to maximized (if the given argument * is true) or restores the JInternalFrame to its normal bounds otherwise. * * @param b Whether this JInteralFrame will be maximized or restored. * * @throws PropertyVetoException If a VetoableChangeListener vetoes the change. */ public void setMaximum(boolean b) throws PropertyVetoException { if (b != isMaximum()) { fireVetoableChange(IS_MAXIMUM_PROPERTY, b, isMaximum); isMaximum = b; if (b) setNormalBounds(getBounds()); maxTransition = ! b; firePropertyChange(IS_MAXIMUM_PROPERTY, ! isMaximum, isMaximum); maxTransition = false; } } /** * This method is deprecated. This method sets the JMenuBar used with this * JInternalFrame. * * @param m The JMenuBar to use with this JInternalFrame. * * @deprecated 1.0.3 */ public void setMenuBar(JMenuBar m) { setJMenuBar(m); } /** * This method sets the bounds that this JInternalFrame will be restored to. * * @param r The bounds that this JInternalFrame will be restored to. */ public void setNormalBounds(Rectangle r) { storedBounds.setBounds(r.x, r.y, r.width, r.height); } /** * This method sets whether the JInternalFrame can be resized by a user * action (like dragging at the frame borders). * * @param b Whether this JInternalFramer can be resized. */ public void setResizable(boolean b) { resizable = b; } /** * This method sets the Root Pane for this JInternalFrame. * * @param root The Root Pane for this JInternalFrame. */ protected void setRootPane(JRootPane root) { if (rootPane != null) remove(rootPane); rootPane = root; add(root); } /** * This method sets whether root pane checking is enabled. If root pane * checking is enabled, then calls to addImpl and setLayout will throw * exceptions. * * @param enabled Whether root pane checking is enabled. */ protected void setRootPaneCheckingEnabled(boolean enabled) { rootPaneCheckingEnabled = enabled; } /** * This method sets whether this JInternalFrame is the selected frame in the * JDesktopPane (or other container). When selected, a JInternalFrame will * have focus and paint its TitlePane differently (usually a different * colour). If this method selects the frame, this JInternalFrame will fire * an INTERNAL_FRAME_ACTIVATED event. If it deselects this frame, it will * fire an INTERNAL_FRAME_DEACTIVATED event. * * @param selected Whether this JInternalFrame will become selected or * deselected. * * @throws PropertyVetoException If a VetoableChangeListener vetoes the change. */ public void setSelected(boolean selected) throws PropertyVetoException { if (selected != isSelected()) { fireVetoableChange(IS_SELECTED_PROPERTY, selected, isSelected); if (! selected) defaultFocus = getMostRecentFocusOwner(); isSelected = selected; if (selected) restoreSubcomponentFocus(); firePropertyChange(IS_SELECTED_PROPERTY, ! isSelected, isSelected); if (isSelected) fireInternalFrameEvent(InternalFrameEvent.INTERNAL_FRAME_ACTIVATED); else fireInternalFrameEvent(InternalFrameEvent.INTERNAL_FRAME_DEACTIVATED); } } /** * This method sets the title displayed in the TitlePane of this * JInternalFrame. * * @param title The title displayed. */ public void setTitle(String title) { if (title == null && this.title == null) return; if (title == null || this.title == null || ! this.title.equals(title)) { String old = title; this.title = title; firePropertyChange(TITLE_PROPERTY, old, this.title); } } /** * This method displays the JInternalFrame. If it is not visible, this * method will bring this JInternalFrame to the front, make it visible and * select it. If this is the first time this JInternalFrame is made * visible, an INTERNAL_FRAME_OPENED event will be fired. */ public void show() { if (! isVisible()) { moveToFront(); super.show(); JDesktopPane pane = getDesktopPane(); if (pane != null) pane.setSelectedFrame(this); else { try { setSelected(true); } catch (PropertyVetoException e) { // Do nothing. if they don't want to be selected. } } if (isFirstTimeVisible) { isFirstTimeVisible = false; fireInternalFrameEvent(InternalFrameEvent.INTERNAL_FRAME_OPENED); } } } /** * This method is used to set the UI responsible for the JInternalFrame. * * @param ui The UI responsible for the JInternalFrame. */ public void setUI(InternalFrameUI ui) { // We must temporarily go into init mode so that the UI can directly // manipulate the JInternalFrame. boolean old = isRootPaneCheckingEnabled(); setRootPaneCheckingEnabled(false); super.setUI(ui); setRootPaneCheckingEnabled(old); } /** * This method causes the JInternalFrame to be brough to back in the * z-order. */ public void toBack() { moveToBack(); } /** * This method causes the JInternalFrame to be brought to front in the * z-order. */ public void toFront() { moveToFront(); } /** * This method resets the UI to the Look and Feel defaults. */ public void updateUI() { // We must go into the init stage when updating the UI, so the UI can // set layout and components directly on the internal frame, not its // content pane. boolean old = isRootPaneCheckingEnabled(); setRootPaneCheckingEnabled(false); setUI((InternalFrameUI) UIManager.getUI(this)); setRootPaneCheckingEnabled(old); } /** * This helper method allows JInternalFrames to signal that they were * iconned for the first time. * * @param b Whether the JInternalFrame was iconned. * @param ID The identifier of the property change event to fire if the * JInternalFrame is iconned for the first time. */ void setWasIcon(boolean b, String ID) { if (b && ! wasIcon) { wasIcon = b; firePropertyChange(ID, ! b, b); } } /** * This helper method returns whether the JInternalFrame has been iconned * once already. * * @return Whether the JInternalFrame has been iconned once already. */ boolean getWasIcon() { return wasIcon; } /** * This method is a convenience method to fire vetoable property changes. * * @param name The identifier of the property change. * @param oldValue The old value. * @param newValue The new value. * * @throws PropertyVetoException Fired if a vetoable change listener vetoes * the change. */ private void fireVetoableChange(String name, boolean oldValue, boolean newValue) throws PropertyVetoException { super.fireVetoableChange(name, Boolean.valueOf(oldValue), Boolean.valueOf(newValue)); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -