1.Navigator.java
package com.logcd.wicket.list;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.markup.html.navigation.paging.IPageable;
import org.apache.wicket.markup.html.navigation.paging.IPagingLabelProvider;
import org.apache.wicket.markup.html.navigation.paging.PagingNavigation;
import org.apache.wicket.markup.html.navigation.paging.PagingNavigator;
import org.apache.wicket.model.LoadableDetachableModel;
public class Navigator extends PagingNavigator {
private static final long serialVersionUID = 1;
public Navigator(String arg0, final IPageable arg1,final Integer total) {
super(arg0, arg1);
Link totallink = new Link("totallink") {
private static final long serialVersionUID = 1;
@Override
public boolean isEnabled() {
return arg1.getPageCount() - 1 > 0;
}
@Override
public void onClick() {
arg1.setCurrentPage(arg1.getPageCount() - 1);
}
};
totallink.add(new Label("totalcount", new LoadableDetachableModel() {
private static final long serialVersionUID = 1;
@Override
protected Object load() {
return String.valueOf(arg1.getPageCount());
}
}));
this.add(totallink);
this.add(new Label("total",total.toString()));
}
public Navigator(String arg0, final IPageable arg1,
IPagingLabelProvider arg2,final Integer total) {
super(arg0, arg1, arg2);
Link totallink = new Link("totallink") {
private static final long serialVersionUID = 1;
@Override
public boolean isEnabled() {
return arg1.getPageCount() - 1 > 0;
}
@Override
public void onClick() {
arg1.setCurrentPage(arg1.getPageCount() - 1);
}
};
totallink.add(new Label("totalcount", new LoadableDetachableModel() {
private static final long serialVersionUID = 1;
@Override
protected Object load() {
return String.valueOf(arg1.getPageCount());
}
}));
this.add(totallink);
this.add(new Label("total",total.toString()));
}
@Override
protected PagingNavigation newNavigation(IPageable arg0,
IPagingLabelProvider arg1) {
return new PagingSetting("navigation", arg0, arg1, this);
}
}
2.PagingSetting.java:用于,显示控制
package com.logcd.wicket.list;
import org.apache.wicket.markup.html.navigation.paging.IPageable;
import org.apache.wicket.markup.html.navigation.paging.IPagingLabelProvider;
import org.apache.wicket.markup.html.navigation.paging.PagingNavigation;
public class PagingSetting extends PagingNavigation {
private static final long serialVersionUID = 1;
@SuppressWarnings("unused")
private IPageable arg1 = null;
private Navigator style = null;
public PagingSetting(String arg0, IPageable arg1, IPagingLabelProvider arg2,
Navigator style) {
super(arg0, arg1, arg2);
this.arg1 = arg1;
this.style = style;
this.setViewSize(5);
}
@Override
protected void onModelChanged() {
super.onModelChanged();
style.get("first").setVisible(true);
style.get("prev").setVisible(true);
style.get("next").setVisible(true);
style.get("last").setVisible(true);
if (arg1.getCurrentPage() < 2) {
style.get("first").setVisible(false);
}
if (arg1.getCurrentPage() < 1) {
style.get("prev").setVisible(false);
}
if (arg1.getCurrentPage() > arg1.getPageCount() - 2) {
style.get("next").setVisible(false);
}
if (arg1.getCurrentPage() > arg1.getPageCount() - 3) {
style.get("last").setVisible(false);
}
}
}
3.Navigator.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link type="text/css" rel="stylesheet" href="styles/wicket.css"></link>
<link type="text/css" rel="stylesheet" href="styles/office.css"></link>
<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
</head>
<body>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" valign="middle">
<wicket:panel>
<a wicket:id="first" class="text">首页</a>
<a wicket:id="prev" class="text">上一页</a>
<span wicket:id="navigation"> <a wicket:id="pageLink"
href="#"><span wicket:id="pageNumber" class="text">0</span></a> </span>
<a wicket:id="next" class="text">下一页</a>
<a wicket:id="last" class="text">尾页</a>
总页数:<a wicket:id="totallink" href="#"><span
wicket:id="totalcount">0</span></a> 页
总记录数:<span wicket:id="total">0</span> 条
</wicket:panel>
</td>
</tr>
</table>
</body>
</html>
4.应用
(1)java:
form.add(new Navigator("navigator", listView2,listView2.getList().size()));
(2)html:
<style type="text/css">
<!--
i,em{
font-style: normal;
color: #CCCCCC;
}
#datNav{
border:1px solid #8C9EBF;
width:100%;
table-layout:fixed;
line-height: 20px;
background-color:#F4F8FF;
}
-->
</style>
<div class="datNav"><span wicket:id ="navigator">这里显示分页操作</span></div>
分享到:
相关推荐
Wicket与其他面向组件的框架相比 威克特说“你好世界!” 4.1。Wicket分发和模块 4.2。Wicket应用程序的配置 4.3。HomePage类 4.4。Wicket链接 4.5。摘要 5. Wicket作为页面布局管理器 5.1。页眉,页脚,左侧菜单,...
它有助于将 Wicket Ajax Behavior 侦听器与实际客户端 UI 功能分开,同时保持与 Wicket 组件的耦合。 它提供了一个(基本的),允许您在 Java 中构建 JavaScript 和 jQuery 表达式。 例子 使用 wicket-js,您可以...
wicket开发指南,wicket 新型的web开发框架,现以能无逢支持jsr168/286
“ wicket组件”项目是apache wicket网络框架的组件库。 wicket组件引用了桌面应用程序的经典组件库(例如Microsoft Foundation Classes,QT Library或wxWindows),为wicket Web应用程序提供了图形用户界面组件。 ...
Wicket开发指南 Wicket开发指南 Wicket开发指南
Wicket has been around since 2004 and it has been an Apache project since 2007. During these years it has proved to be a solid and valuable solution for building enterprise web applications. Wicket ...
wicket国际化例子 含有wicket:message StringResourceModel 等读取properties资源文件的代码示例
wicket 基础知识培训,主要是讲解wicket入门知识,通过和struts比较来进行讲解。
wicket 开发指南 比较全面的介绍wicket的使用
wicket 6.x api.chm wicket帮助文档
wicket编译所需的maven库,搬运
wicket-menu.zip,Wicket菜单
wicket学习文档
Apache Wicket是一个开源的,基于Java,基于组件的Web应用程序框架。 通过适当的标记/逻辑分离,POJO数据模型以及令人耳目一新的XML缺乏,Apache Wicket使开发Web应用程序变得简单而又愉快。 交换样板,复杂的调试...
从wicket官网中下载的wicket1.4.7中jar包,对于编写wicket相关的程序有所需要的朋友可以下载
Wicket 入门,以及Eclipse里建立project
wicket-examples 示例 wicket-examples 示例 wicket-examples 示例 wicket-examples 示例
Wicket,有一个优秀的Web框架。和Struts和Webwork类似的Java WEB开发框架。优点在于对HTML和业务代码进行了有效的分离(流行的WEB框架大多如此)。基于规则的配置(有效减少了XML配置文件的使用,与Spring相比,...
wicket例子和开发指南,指南为PDF文档,例子为wicket自带例子。
Wicket开发指南.pdf Wicket开发指南.pdf Wicket开发指南.pdfWicket开发指南.pdfWicket开发指南.pdf