📄 usersearchpanel.java
字号:
package com.ciash.bms.gui.search;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.util.Collection;
import javax.swing.JPanel;
import com.ciash.bms.entity.User;
import com.ciash.bms.gui.search.loader.UserLoaderPanel;
import com.ciash.bms.gui.search.loader.UserLoader;
import com.ciash.bms.gui.selecter.UserSelecter;
import com.ciash.bms.gui.selecter.event.UserSelectListenable;
import com.ciash.bms.gui.selecter.event.UserSelectListener;
import com.ciash.bms.gui.uiInter.SearchUI;
import com.ciash.bms.observer.UserSearchObserver;
import com.ciash.common.gui.FindInfoPanel;
import com.ciash.common.gui.event.FindEvent;
import com.ciash.common.gui.event.FindListener;
/**
* 实现选择器接口以及搜索器接口
*/
public class UserSearchPanel
extends JPanel
implements SearchUI {
protected String[] findMethods = { "按用户名查找" ,"按姓名查找"};
private FindInfoPanel findInfoPanel = new FindInfoPanel();
private FlowLayout flowLayout1 = new FlowLayout(FlowLayout.LEFT);
private JPanel northPanel = new JPanel(flowLayout1);
private UserSearchObserver controller;
private UserLoaderPanel userLoaderPanel;
private String searchInfo;
public UserSearchPanel(UserLoaderPanel userLoaderPanel) {
super();
jbInit();
setUserLoader(userLoaderPanel);
}
public UserSearchPanel(UserSearchObserver userSearchObserver,
UserLoaderPanel userLoader) {
this(userLoader);
setSearchObserver(userSearchObserver);
}
public UserSearchPanel() {
jbInit();
}
private void jbInit() {
setLayout(new BorderLayout());
northPanel.add(findInfoPanel);
add(northPanel, BorderLayout.NORTH);
setMethods();
}
public void setSearchObserver(UserSearchObserver userSearchObserver) {
this.controller = userSearchObserver;
findInfoPanel.clearFindListener();
findInfoPanel.addFindListener(new InnerListener());
}
public UserSearchObserver getSearchObserver() {
return controller;
}
private void setMethods() {
for (int i = 0; i < findMethods.length; i++) {
findInfoPanel.addFindMethodName(findMethods[i]);
}
}
public String getSearchInfo() {
return searchInfo;
}
private class InnerListener implements FindListener {
public void buttonPressed(FindEvent e) {
String method = e.getMethod();
searchInfo = e.getInfo();
if (method.equals(findMethods[0])) {
controller.findUserById();
} else if (method.equals(findMethods[1])) {
controller.findUserByName();
}
}
}
public void setUserLoader(UserLoaderPanel userLoaderPanel) {
this.userLoaderPanel = userLoaderPanel;
add(userLoaderPanel, BorderLayout.CENTER);
}
public UserLoaderPanel getUserLoader() {
return userLoaderPanel;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -