⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 backgroundpainter.java

📁 j2me设计的界面包
💻 JAVA
字号:
/* * Copyright 2008 Sun Microsystems, Inc.  All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.  Sun designates this * particular file as subject to the "Classpath" exception as provided * by Sun in the LICENSE file that accompanied this code. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, * CA 95054 USA or visit www.sun.com if you need additional information or * have any questions. */package com.sun.lwuit.painter;import com.sun.lwuit.Component;import com.sun.lwuit.Graphics;import com.sun.lwuit.Image;import com.sun.lwuit.Painter;import com.sun.lwuit.geom.Rectangle;import com.sun.lwuit.plaf.Style;/** * A painter that draws the background of a component based on its style * * @author Shai Almog */public class BackgroundPainter implements Painter {    private Component parent;        /**     * Construct a background painter for the given component     */    public BackgroundPainter(Component parent) {        this.parent = parent;    }        /**     * @inheritDoc     */    public void paint(Graphics g, Rectangle rect) {        Style s = parent.getStyle();        int x = rect.getX();        int y = rect.getY();        int width = rect.getSize().getWidth();        int height = rect.getSize().getHeight();        if (width <= 0 || height <= 0) {            return;        }        Image bgImage = s.getBgImage();        if (bgImage == null) {            if (parent.hasFocus() && parent.isFocusPainted()) {                g.setColor(s.getBgSelectionColor());                g.fillRect(x, y, width, height, s.getBgTransparency());            } else {                g.setColor(s.getBgColor());                g.fillRect(x, y, width, height, s.getBgTransparency());            }        } else {            if (s.isScaleImage()) {                if (bgImage.getWidth() != width || bgImage.getHeight() != height) {                    bgImage = bgImage.scaled(width, height);                    s.setBgImage(bgImage, true);                }            } else {                int iW = bgImage.getWidth();                int iH = bgImage.getHeight();                for(int xPos = 0 ; xPos < width ; xPos += iW) {                     for(int yPos = 0 ; yPos < height ; yPos += iH) {                         g.drawImage(s.getBgImage(), x + xPos, y + yPos);                    }                }                return;            }            g.drawImage(s.getBgImage(), x, y);        }    }}

⌨️ 快捷键说明

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