📄 lovewallwindowpane.java
字号:
package com.cownew.phoneshow.ent;
import java.util.List;
import nextapp.echo2.app.CheckBox;
import nextapp.echo2.app.ContentPane;
import nextapp.echo2.app.Row;
import nextapp.echo2.app.SplitPane;
import nextapp.echo2.app.WindowPane;
import nextapp.echo2.app.event.ActionEvent;
import nextapp.echo2.app.event.ActionListener;
import org.apache.commons.lang.math.RandomUtils;
import com.cownew.phoneshow.MainApp;
import com.cownew.phoneshow.basedata.lovewall.ILoveWallDAO;
import com.cownew.phoneshow.basedata.lovewall.LoveWallInfo;
import com.cownew.phoneshow.framework.common.ClientInfo;
import com.cownew.phoneshow.framework.common.ServiceLocator;
import echopointng.ExtentEx;
import echopointng.PushButton;
public class LoveWallWindowPane extends WindowPane
{
//放置爱墙条目用的面板
private ContentPane contentPane;
public LoveWallWindowPane()
{
super();
setTitle("爱墙");
SplitPane splitPane = new SplitPane(
SplitPane.ORIENTATION_VERTICAL_TOP_BOTTOM);
splitPane.setSeparatorPosition(new ExtentEx("30px"));
add(splitPane);
// 创建工具条
Row rowToolBar = new Row();
splitPane.add(rowToolBar);
contentPane = new ContentPane();
splitPane.add(contentPane);
PushButton btnNew = new PushButton("新建");
rowToolBar.add(btnNew);
btnNew.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
createItem();
}
});
PushButton btnSave = new PushButton("保存");
rowToolBar.add(btnSave);
btnSave.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
saveItems();
}
});
final CheckBox cbRange = new CheckBox("显示所有");
cbRange.setSelected(true);
rowToolBar.add(cbRange);
cbRange.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
loadItems(cbRange.isSelected());
}
});
loadItems(true);
}
// 保存当前用户的所有便条
protected void saveItems()
{
for (int i = 0, n = contentPane.getComponentCount(); i < n; i++)
{
LoveWallItem lwItem = (LoveWallItem) contentPane.getComponent(i);
lwItem.save();
}
}
// 创建一个爱墙条目
protected void createItem()
{
ClientInfo clientInfo = new ClientInfo(MainApp.getActive());
// 取得一个随机数做为条目的横坐标
int x = RandomUtils.nextInt(clientInfo.getScreenWidth() / 2);
// 取得一个随机数做为条目的纵坐标
int y = RandomUtils.nextInt(clientInfo.getScreenHeight() / 2);
ILoveWallDAO lwDAO = (ILoveWallDAO) ServiceLocator
.getService(ILoveWallDAO.class);
String userId = MainApp.getActiveUserId();
// 保存创建的条目到数据库
LoveWallInfo lwInfo = lwDAO.createLoveWall(userId, "", x, y);
LoveWallItem item = new LoveWallItem(lwInfo);
// 将创建的爱墙显示到屏幕中
contentPane.add(item);
}
// 加载消息条,showall表示是否显示全部还是只显示当前用户的
private void loadItems(boolean showAll)
{
// 清除原有的资料条
contentPane.removeAll();
List items = null;
ILoveWallDAO dao = (ILoveWallDAO) ServiceLocator
.getService(ILoveWallDAO.class);
if (showAll)
{
// 如果是显示所有消息则不过滤
items = dao.queryAll();
} else
{
// 如果值显示当前用户的,则按照用户名进行过滤
items = dao.queryByUserId(MainApp.getActiveUserId());
}
// 将爱墙条目加载到界面中
for (int i = 0, n = items.size(); i < n; i++)
{
LoveWallInfo lwInfo = (LoveWallInfo) items.get(i);
LoveWallItem item = new LoveWallItem(lwInfo);
contentPane.add(item);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -