📄 jmbuttonpanel.java.svn-base
字号:
package jm.framework.gui.container;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JPanel;
import jm.framework.gui.module.JMButton;
import jm.framework.gui.module.JMIcon;
/**
* <p>Title: JM 整合Swing控件,使用配置信息</p>
*
* <p>Copyright: Copyright (c) 2004-2006</p>
*
* <p>Company: 1SHome</p>
*
* <p>@author Spook</p>
*
* @since 1.3
* @see JDK 1.5.0.6
*/
public class JMButtonPanel extends JPanel {
private GridLayout gridLayout1 = new GridLayout();
private JMButton[] Buttons = null;
int Number = 0;
public JMButtonPanel (int num) {
try {
Number = num;
Buttons = new JMButton[num];
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* 按钮数量
* @return int
*/
public int getNumber () {
return Number;
}
/**
* 按钮点击操作
* @param e ActionEvent
*/
public void addCommandActionListener (JMGUIActionListener ...actionListeners) {
int i = 0;
for (JMGUIActionListener actionListener : actionListeners) {
if (i >= Number) {
return;
}
getButton(i++).addActionListener(actionListener);
}
}
/**
* 按钮点击操作
* @param index int 索引从1开始
* @param actionListener JMGUIActionListener
*/
public void addCommandActionListener (int index, JMGUIActionListener actionListener) {
getButton(index - 1).addActionListener(actionListener);
}
/**
* 设置按钮名称
* @param names String[]
*/
public void setButton (String ...names) {
int i = 0;
for (String name : names) {
if (i >= Number) {
return;
}
getButton(i++).setText(name);
}
}
/**
* 设置按钮的大小
* @param dimensions Dimension[]
*/
public void setButtonPreferredSize (Dimension ...dimensions) {
int i = 0;
for (Dimension dimension : dimensions) {
if (i >= Number) {
return;
}
getButton(i++).setPreferredSize(dimension);
}
}
/**
* 设置按钮的大小
* @param dimension Dimension
*/
public void setButtonPreferredSize (Dimension dimension) {
for (int i = 0; i < Number; i++) {
getButton(i++).setPreferredSize(dimension);
}
}
/**
* 设置按钮图标
* @param images String[]
*/
public void setButtonImage (String ...images) {
int i = 0;
for (String image : images) {
if (i >= Number) {
return;
}
//getButton(i++).setMargin(new Insets(0,0,0,0));
getButton(i++).setIcon(new JMIcon(image));
}
}
public JButton getButton (int index) {
if (index >= Number || index < 0) {
return Buttons[0];
}
if (Buttons[index] == null) {
Buttons[index] = new JMButton();
}
return Buttons[index];
}
public JButton[] getButtons () {
return Buttons;
}
private void jbInit () throws Exception {
this.setLayout(gridLayout1);
this.setPreferredSize(new Dimension(1, 22));
for (int i = 0; i < Number; i++) {
this.add(getButton(i));
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -