📄 usedjlistdialog.java
字号:
import javax.swing.JDialog;
import java.awt.GridBagLayout;
import java.awt.GridBagConstraints;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JList;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.ListModel;
import java.util.Vector;
class UsedJListDialog extends JDialog implements ActionListener{
GridBagLayout gridBagLayout1=new GridBagLayout();
GridBagConstraints gridBagConstraints1=new GridBagConstraints();
MakeConstraints makeConstraints=new MakeConstraints();
JLabel jLabel1=new JLabel("所有用户:");
JLabel jLabel2=new JLabel("解雇用户:");
JListPane jListPane1=new JListPane();
ButtonPane buttonPane1=new ButtonPane();
JListPane jListPane2=new JListPane();
UsedJListDialog(){
setTitle("列表框示例");
setSize(330,250);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
getContentPane().setLayout(gridBagLayout1);
makeConstraints.set(gridBagConstraints1,0,0,2,1,60,10,GridBagConstraints.BOTH,GridBagConstraints.SOUTHWEST);
gridBagLayout1.setConstraints(jLabel1,gridBagConstraints1);
getContentPane().add(jLabel1);
makeConstraints.set(gridBagConstraints1,2,0,1,1,40,10,GridBagConstraints.NONE,GridBagConstraints.SOUTHWEST);
gridBagLayout1.setConstraints(jLabel2,gridBagConstraints1);
getContentPane().add(jLabel2);
//
makeConstraints.set(gridBagConstraints1,0,1,1,1,40,90,GridBagConstraints.BOTH,GridBagConstraints.CENTER);
gridBagLayout1.setConstraints(jListPane1,gridBagConstraints1);
getContentPane().add(jListPane1);
jListPane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
String[] s={"张飞","关羽","刘备","曹操","诸葛亮","湘云","妙玉","袭人","晴雯","香菱","刘姥姥","凤姐儿"};
jListPane1.jList1.setListData(s);
makeConstraints.set(gridBagConstraints1,1,1,1,1,20,90,GridBagConstraints.BOTH,GridBagConstraints.CENTER);
gridBagLayout1.setConstraints(buttonPane1,gridBagConstraints1);
getContentPane().add(buttonPane1);
makeConstraints.set(gridBagConstraints1,2,1,1,1,40,90,GridBagConstraints.BOTH,GridBagConstraints.CENTER);
gridBagLayout1.setConstraints(jListPane2,gridBagConstraints1);
getContentPane().add(jListPane2);
//
buttonPane1.jButton1.addActionListener(this);
buttonPane1.jButton2.addActionListener(this);
buttonPane1.jButton3.addActionListener(this);
buttonPane1.jButton4.addActionListener(this);
show();
}
public void actionPerformed(ActionEvent e){
Object sourceObj=e.getSource();
int count;
String itemStr;
Vector vector1=new Vector();
if(sourceObj==buttonPane1.jButton1){ //全部添加
count=jListPane1.jList1.getModel().getSize();
for(int i=0;i<count;i++){
itemStr=(String)jListPane1.jList1.getModel().getElementAt(i);
//vector1.addElement(itemStr);
vector1.add(itemStr);
}
jListPane2.jList1.setListData(vector1);
}
else if(sourceObj==buttonPane1.jButton2){ //全部删除
vector1.removeAllElements();
jListPane2.jList1.setListData(vector1);
}
else if(sourceObj==buttonPane1.jButton3){ //添加
String itemStr1,itemStr2;
itemStr1=(String)jListPane1.jList1.getSelectedValue();
boolean addCondition=true;
if(itemStr1!=null){
vector1.removeAllElements();
count=jListPane2.jList1.getModel().getSize();
if(count>0){
for(int i=0;i<count;i++){
itemStr2=(String)jListPane2.jList1.getModel().getElementAt(i);
vector1.addElement(itemStr2);
if(itemStr1.equals(itemStr2)==true){
addCondition=false;
break;
}
}
if(addCondition){
//vector1.addElement(itemStr1);
vector1.add(itemStr1);
jListPane2.jList1.setListData(vector1);
}
}
else{
vector1.addElement(itemStr1);
jListPane2.jList1.setListData(vector1);
}
}
}
else if(sourceObj==buttonPane1.jButton4){ //删除
int index=jListPane2.jList1.getSelectedIndex();
vector1.removeAllElements();
count=jListPane2.jList1.getModel().getSize();
if(index!=-1){
for(int i=0;i<count;i++){
itemStr=(String)jListPane2.jList1.getModel().getElementAt(i);
vector1.addElement(itemStr);
}
vector1.removeElementAt(index);
jListPane2.jList1.setListData(vector1);
}
}
}
public static void main(String[] args){
UsedJListDialog usedJListDialog1=new UsedJListDialog();
}
}
class JListPane extends JScrollPane{
JList jList1=new JList();
JListPane(){
setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
getViewport().setView(jList1);
}
}
class ButtonPane extends JPanel{
GridBagLayout gridBagLayout1=new GridBagLayout();
GridBagConstraints gridBagConstraints1=new GridBagConstraints();
MakeConstraints makeConstraints=new MakeConstraints();
JButton jButton1=new JButton("全部添加>>");
JButton jButton2=new JButton("全部删除<<");
JButton jButton3=new JButton("添加>");
JButton jButton4=new JButton("删除<");
ButtonPane(){
setLayout(gridBagLayout1);
makeConstraints.set(gridBagConstraints1,0,0,1,1,100,40,GridBagConstraints.HORIZONTAL,GridBagConstraints.SOUTH);
gridBagLayout1.setConstraints(jButton1,gridBagConstraints1);
add(jButton1);
makeConstraints.set(gridBagConstraints1,0,1,1,1,100,10,GridBagConstraints.HORIZONTAL,GridBagConstraints.CENTER);
gridBagLayout1.setConstraints(jButton2,gridBagConstraints1);
add(jButton2);
makeConstraints.set(gridBagConstraints1,0,2,1,1,100,10,GridBagConstraints.HORIZONTAL,GridBagConstraints.CENTER);
gridBagLayout1.setConstraints(jButton3,gridBagConstraints1);
add(jButton3);
makeConstraints.set(gridBagConstraints1,0,3,1,1,100,40,GridBagConstraints.HORIZONTAL,GridBagConstraints.NORTH);
gridBagLayout1.setConstraints(jButton4,gridBagConstraints1);
add(jButton4);
}
}
class MakeConstraints{
void set(GridBagConstraints gbc,int gridx,int gridy,int gridwidth,int gridheight,double weightx,double weighty,int fill,int anchor){
gbc.gridx=gridx;
gbc.gridy=gridy;
gbc.gridwidth=gridwidth;
gbc.gridheight=gridheight;
gbc.weightx=weightx;
gbc.weighty=weighty;
gbc.fill=fill;
gbc.anchor=anchor;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -