jntogglebutton.java
来自「纯java操作系统jnode,安装简单和操作简单的个人使用的Java操作系统」· Java 代码 · 共 130 行
JAVA
130 行
/*
* $Id: JNToggleButton.java,v 1.2 2004/02/28 09:20:51 epr Exp $
*/
package org.jnode.wt.components;
import org.jnode.wt.events.JNodeMouseEvent;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
/**
* @author kishore
*/
public class JNToggleButton extends JNButton {
//private boolean isSelected = false;
private JNLabel aLabel;
static final int DEFAULT_TOGGLEBUTTON = 0;
static final int TABBEDPANE_TOGGLEBUTTON = 1;
private int style = DEFAULT_TOGGLEBUTTON;
/**
* JNToggleButton constructor comment.
* @param s java.lang.String
*/
public JNToggleButton(String s) {
super(s);
}
/**
* JNToggleButton constructor comment.
* @param text java.lang.String
* @param w int
* @param h int
*/
public JNToggleButton(String text, int w, int h) {
super(text, w, h);
}
public int getStyle() {
return style;
}
protected void paintButton(Graphics g) {
if (style == DEFAULT_TOGGLEBUTTON) {
paintDefaultToggleButton(g);
} else if (style == TABBEDPANE_TOGGLEBUTTON) {
paintTabbedPaneToggleButton(g);
}
}
protected void paintDefaultToggleButton(Graphics g) {
int width = this.getWidth();
int height = this.getHeight();
// g.setColor(Color.gray);
// g.clearRect(0,0,width,height);
if (isSelected()) {
aLabel.setSelected(true);
aLabel.setSelectedColors(Color.blue, Color.white);
aLabel.internallyPaint(g);
} else {
aLabel.setSelected(false);
aLabel.setSelectedColors(this.getBackground(), this.getForeground());
aLabel.internallyPaint(g);
}
// out line.
g.setColor(Color.black);
g.drawRect(0, 0, width, height);
}
protected void paintTabbedPaneToggleButton(Graphics g) {
int width = this.getWidth();
int height = this.getHeight();
if (isSelected()) {
// aLabel.setSelected( true );
aLabel.setSelectedColors(Color.blue, Color.red);
aLabel.internallyPaint(g);
} else {
// aLabel.setSelected( false );
aLabel.setSelectedColors(this.getBackground(), this.getForeground());
aLabel.internallyPaint(g);
}
// out line.
g.setColor(Color.black);
g.drawRect(0, 0, width, height);
}
protected void processMouseEvent(JNodeMouseEvent event) {
if (event.getID() == JNodeMouseEvent.MOUSE_PRESSED) {
setSelected(!isSelected());
Graphics gfx = getGraphics().create();
gfx.translate(getAbsLocation().x, getAbsLocation().y);
update(gfx);
}
/* if (event.getID() == JNodeMouseEvent.MOUSE_RELEASED)
{
pressed = false;
update(getGraphics());
}
super.processMouseEvent(event);
*/
notifyListeners();
}
public void setSize(Dimension d) {
setButtonTotalBorderWidth(0);
super.setSize(d);
}
public void setStyle(int s) {
style = s;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?