windowsmenuitemui.java

来自「java jdk 1.4的源码」· Java 代码 · 共 73 行

JAVA
73
字号
/* * @(#)WindowsMenuItemUI.java	1.19 03/01/23 * * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package com.sun.java.swing.plaf.windows;import java.awt.*;import javax.swing.*;import javax.swing.event.*;import javax.swing.plaf.*;import javax.swing.plaf.basic.*;/** * Windows rendition of the component. * <p> * <strong>Warning:</strong> * Serialized objects of this class will not be compatible with * future Swing releases.  The current serialization support is appropriate * for short term storage or RMI between applications running the same * version of Swing.  A future release of Swing will provide support for * long term persistence. */public class WindowsMenuItemUI extends BasicMenuItemUI {    public static ComponentUI createUI(JComponent c) {	return new WindowsMenuItemUI();    }    /**     * Method which renders the text of the current menu item.     * <p>     * @param g Graphics context     * @param menuItem Current menu item to render     * @param textRect Bounding rectangle to render the text.     * @param text String to render     */    protected void paintText(Graphics g, JMenuItem menuItem, Rectangle textRect, String text) {	// Note: This method is almost identical to the same method in WindowsMenuUI	ButtonModel model = menuItem.getModel();	if(!model.isEnabled()) {	    // *** paint the text disabled	    WindowsGraphicsUtils.paintText(g, menuItem, textRect, text, 0);	} else {	    FontMetrics fm = g.getFontMetrics();	    int mnemonicIndex = menuItem.getDisplayedMnemonicIndex();	    // W2K Feature: Check to see if the Underscore should be rendered.	    if (WindowsLookAndFeel.isMnemonicHidden() == true) {		mnemonicIndex = -1;	    }	    Color oldColor = g.getColor();	    // *** paint the text normally	    if (model.isArmed()|| (menuItem instanceof JMenu && model.isSelected())) {		g.setColor(selectionForeground); // Uses protected field.	    }	    BasicGraphicsUtils.drawStringUnderlineCharAt(g,text,                                          mnemonicIndex,					  textRect.x, 					  textRect.y + fm.getAscent());	    g.setColor(oldColor);	}    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?