📄 membergroup.java
字号:
//package psn.nicholas.swing;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
public class MemberGroup extends JPanel {
/**
*
*/
private static final long serialVersionUID = 1L;
private JButton titleButton;
private JPanel memberPanel;
private JScrollPane sp;
public MemberGroup() {
this("");
}
public MemberGroup(String name) {
super(new BorderLayout());
JPanel temp = new JPanel(new FlowLayout(FlowLayout.LEFT,0,1));
titleButton = new JButton(name);
titleButton.setFocusable(false);
memberPanel = new JPanel(new GridLayout(0,1,0,0));
temp.add(memberPanel);
sp = new JScrollPane(temp);
sp.setBorder(null);
sp.setHorizontalScrollBarPolicy(
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
this.add(titleButton, BorderLayout.NORTH);
this.add(sp, BorderLayout.CENTER);
collapse();
}
public JButton getTitleButton() {
return titleButton;
}
public void setMemberGaps(int hgap, int vgap) {
memberPanel.setLayout(new GridLayout(0,1,hgap,vgap));
}
public JPanel getMemberPanel() {
return memberPanel;
}
public void collapse() {
sp.setVisible(false);
this.revalidate();
}
public void expand() {
sp.setVisible(true);
this.revalidate();
}
public void setGroupName(String name) {
titleButton.setText(name);
}
public String getGroupName() {
return titleButton.getText();
}
public void addMember(Component comp) {
memberPanel.add(comp);
memberPanel.doLayout();
}
public void addMember(Component comp, int index) {
memberPanel.add(comp,index);
memberPanel.doLayout();
}
public void removeMember(int index) {
memberPanel.remove(index);
memberPanel.doLayout();
}
public int getMemberCount() {
return memberPanel.getComponentCount();
}
public Component getMember(int index) {
return memberPanel.getComponent(index);
}
public Component[] getMembers() {
Component coms[] = new Component[getMemberCount()];
for (int i = 0; i < coms.length; i++) {
coms[i] = memberPanel.getComponent(i);
}
return coms;
}
public String toString() {
return getName();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -