把这段代码改成更新注销的用户public void updateFriendList(String allFriend) { myFriendListPanel.removeAll(); String friendName[] = allFriend.split(" "); //System.out.println(friendName); //int friendCount = friendName.length; myFriendListPanel.setLayout(new GridLayout(friendName.length-1,1));//网格布局去管理50多个好友图标 for(int i=1; i < friendName.length; i++){ //myFriendJLabel[i] = new JLabel(i+1 +"号好友", new ImageIcon("images/duck.gif"), JLabel.LEFT); //随机好友图标String imageStr = "images/"+(int)(Math.random()*6)+".jpg"; String imageStr = "images/"+i%6+".jpg"; ImageIcon imageIcon = new ImageIcon(imageStr); myFriendJLabel[i] = new JLabel(friendName[i] + "", imageIcon, JLabel.LEFT); //十七-1-把图标设置为非激活状态 //if(i != Integer.valueOf(userName)) //自己图标是默认激活的 //myFriendJLabel[i].setEnabled(false); //把好友图标设置为非激活状态 //myFriendJLabel[i] = new JLabel(i+1 +"", new ImageIcon("images/duck.gif"), JLabel.LEFT); myFriendJLabel[i].addMouseListener(this); //注册事件 myFriendListPanel.add(myFriendJLabel[i]); } myFriendListPanel.revalidate(); }
时间: 2024-02-15 20:02:04 浏览: 53
为了更新注销的用户,我们可以在循环中添加一个判断:如果当前的好友用户名等于注销的用户,则跳过这个好友,不再将其添加到好友列表中。修改后的代码如下:
```
public void updateFriendList(String allFriend, String logoutUser) {
myFriendListPanel.removeAll();
String friendName[] = allFriend.split(" ");
myFriendListPanel.setLayout(new GridLayout(friendName.length-1,1));
for(int i=1; i < friendName.length; i++){
if (friendName[i].equals(logoutUser)) {
continue; // 跳过该用户
}
String imageStr = "images/"+i%6+".jpg";
ImageIcon imageIcon = new ImageIcon(imageStr);
myFriendJLabel[i] = new JLabel(friendName[i] + "", imageIcon, JLabel.LEFT);
myFriendJLabel[i].addMouseListener(this);
myFriendListPanel.add(myFriendJLabel[i]);
}
myFriendListPanel.revalidate();
}
```
其中,新增了一个参数`logoutUser`,表示注销的用户的用户名。在循环中,使用`if (friendName[i].equals(logoutUser))`判断当前的好友用户名是否等于注销的用户,如果是,则使用`continue`语句跳过该用户,不再将其添加到好友列表中。
阅读全文