热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JAVA基础控件_JAVA技巧:wicket一些基础控件代码

仅限记录!wicket对所有控件设定都存放与Server,不知好是不好,感觉有些不靠谱!packagecom.wicket.

仅限记录!wicket对所有控件设定都存放与Server,不知好是不好,感觉有些不靠谱!

package com.wicket.page;

import java.awt.Graphics2D;

import java.awt.image.renderable.RenderableImage;

import java.io.IOException;

import java.io.Serializable;

import java.util.ArrayList;

import java.util.Date;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import org.apache.wicket.Component;

import org.apache.wicket.Page;

import org.apache.wicket.PageParameters;

import org.apache.wicket.behavior.IBehavior;

import org.apache.wicket.markup.html.WebMarkupContainer;

import org.apache.wicket.markup.html.WebMarkupContainerWithAssociatedMarkup;

import org.apache.wicket.markup.html.WebPage;

import org.apache.wicket.markup.html.basic.Label;

import org.apache.wicket.markup.html.basic.MultiLineLabel;

import org.apache.wicket.markup.html.border.Border;

import org.apache.wicket.markup.html.border.BoxBorder;

import org.apache.wicket.markup.html.border.Border.BorderBodyContainer;

import org.apache.wicket.markup.html.form.Button;

import org.apache.wicket.markup.html.form.Check;

import org.apache.wicket.markup.html.form.CheckBox;

import org.apache.wicket.markup.html.form.CheckBoxMultipleChoice;

import org.apache.wicket.markup.html.form.CheckGroup;

import org.apache.wicket.markup.html.form.CheckGroupSelector;

import org.apache.wicket.markup.html.form.DropDownChoice;

import org.apache.wicket.markup.html.form.Form;

import org.apache.wicket.markup.html.form.IChoiceRenderer;

import org.apache.wicket.markup.html.form.ListChoice;

import org.apache.wicket.markup.html.form.ListMultipleChoice;

import org.apache.wicket.markup.html.form.PasswordTextField;

import org.apache.wicket.markup.html.form.Radio;

import org.apache.wicket.markup.html.form.RadioChoice;

import org.apache.wicket.markup.html.form.RadioGroup;

import org.apache.wicket.markup.html.form.SubmitLink;

import org.apache.wicket.markup.html.form.TextArea;

import org.apache.wicket.markup.html.form.TextField;

import org.apache.wicket.markup.html.form.upload.FileUpload;

import org.apache.wicket.markup.html.form.upload.FileUploadField;

import org.apache.wicket.markup.html.form.validation.IFormValidator;

import org.apache.wicket.markup.html.image.Image;

import org.apache.wicket.markup.html.image.resource.RenderedDynamicImageResource;

import org.apache.wicket.markup.html.include.Include;

import org.apache.wicket.markup.html.link.BookmarkablePageLink;

import org.apache.wicket.markup.html.link.ExternalLink;

import org.apache.wicket.markup.html.link.IPageLink;

import org.apache.wicket.markup.html.link.Link;

import org.apache.wicket.markup.html.link.PageLink;

import org.apache.wicket.markup.html.list.ListItem;

import org.apache.wicket.markup.html.list.ListView;

import org.apache.wicket.markup.html.list.PageableListView;

import org.apache.wicket.markup.html.navigation.paging.PagingNavigator;

import org.apache.wicket.markup.html.panel.ComponentFeedbackPanel;

import org.apache.wicket.markup.html.panel.FeedbackPanel;

import org.apache.wicket.model.CompoundPropertyModel;

import org.apache.wicket.model.IModel;

import org.apache.wicket.model.Model;

import org.apache.wicket.model.PropertyModel;

import org.apache.wicket.util.file.File;

import org.apache.wicket.util.lang.Bytes;

import com.wicket.model.BookModel;

public class HelloWorldPage extends WebPage {

private static final long SVU = 1L;

private int count = 0;

public HelloWorldPage(){

//信息输出

Label label = new Label("message","Hello world!");

this.add(label);

MultiLineLabel linelabel = new MultiLineLabel("multimessage","Hello \nworld");

this.add(linelabel);

//容器

WebMarkupContainerWithAssociatedMarkup panel =

new WebMarkupContainerWithAssociatedMarkup("panel");

Label label1 = new Label("panel_label","这是被panel容纳进来的Label!");

panel.add(label1);

this.add(panel);

WebMarkupContainer webpanel =

new WebMarkupContainer("webpanel");

Label label2 = new Label("webpanel_label","这是被webpanel容纳进来的Label!");

webpanel.add(label2);

this.add(webpanel);

Border border = new BoxBorder("border");

Label label3 = new Label("border_label","这是被border容纳的label");

border.add(label3);

this.add(border);

this.add(new Include("include","inc/include.html"));

//超级链接控件

Link link = new Link("link") {@Override

public void onClick() {

count++;

}};  link.add(new Label("count",new Model(){

public String getObject(){

return count+"";

}

}));

this.add(link);

ExternalLink externallink = new ExternalLink

("externallink","http://www.baidu.com","百度");

this.add(externallink);

PageLink pagelink = new PageLink("pagelink",new IPageLink(){

public Class extends Page> getPageIdentity() {

return TestPageLink.class;

}

public Page getPage(){

return new TestPageLink();

}

});

this.add(pagelink);

PageParameters pps = new PageParameters();

pps.put("id", 1);

BookmarkablePageLink bmplink =

new BookmarkablePageLink("bookmarkablepagelink",TestPageLink.class,pps);

this.add(bmplink);

//表单输入控件

final FeedbackPanel feed = new FeedbackPanel("errmsg");

//form表单的button组件

Form form = new Form("myform"){

protected void onSubmit(){

feed.info(loadonSubmit("你提交了button表单"));

}

};

Button button1 = new Button("button1"){

public void onSubmit(){

feed.info(loadonSubmit("你按下了button1"));

}

};

Button button2 = new Button("button2"){

public void onSubmit(){

feed.info(loadonSubmit("你按下了button2"));

}

};

form.add(button1);

form.add(button2);

this.add(feed);

this.add(form);

//form表单的Link组件

final FeedbackPanel feed1 = new FeedbackPanel("errmsg1");

Form linkform = new Form("myform1"){

protected void onSubmit(){

feed1.info(loadonSubmit("你提交了linkform表单"));

}

};

SubmitLink submitlink = new SubmitLink("submit_form_link"){

public void onSubmit(){

feed1.info(loadonSubmit("你按下了linkform的内部提交"));

}

};

SubmitLink submitlink1 = new SubmitLink("submit_link",linkform){

public void onSubmit(){

feed1.info(loadonSubmit("你按下了linkform的外部提交"));

}

};

linkform.add(submitlink);

this.add(submitlink1);

this.add(feed1);

this.add(linkform);

//文本输入控件

//只允许输入数字,且不能为空,默认值为"请输入测试字符"

TextField text = new TextField("textload",Integer.class);

text.setLabel(new Model("请输入测试字符"));

text.setRequired(true);

final ComponentFeedbackPanel feed2 = new ComponentFeedbackPanel("errmsg2",text);

Form textform = new Form("textform"){

protected void onSubmit(){

feed2.info(loadonSubmit("你提交了textform表单"));

}

};

textform.add(text);

this.add(feed2);

this.add(textform);

//密码输入控件

//只允许输入数字,且不能为空,默认值为"请输入测试字符"

PasswordTextField textpass = new PasswordTextField("text_pass");

final FeedbackPanel feed3 = new FeedbackPanel("errmsg3");

Form passform = new Form("passform"){

protected void onSubmit(){

feed3.info(loadonSubmit("你提交了passform表单"));

}

};

passform.add(textpass);

this.add(feed3);

this.add(passform);

//多行文本输入

TextArea textarea = new TextArea("textarea");

this.add(textarea);

//选择框

CheckBox checkbox = new CheckBox("checkboxbool");

this.add(checkbox);

//多项选择框

Listlist = new ArrayList();

list.add("1");

list.add("2");

list.add("3");

final HashMapmap = new HashMap();

map.put("1","语文");

map.put("2","数学");

map.put("3","英语");

//实现IChoiceRenderer接口以保存checkbox的显示文字与值 IChoiceRenderer renderer = new IChoiceRenderer(){

public Object getDisplayValue(Object object){

return map.get(object);

}

public String getIdValue(Object arg0, int arg1) {

return null;

}

};

CheckBoxMultipleChoice Onlysites=

new CheckBoxMultipleChoice("sites",list,renderer);

List ALLSITES = new ArrayList();

final Map ALLNAMES = new HashMap();

ALLSITES.add("1");

ALLSITES.add("2");

ALLSITES.add("3");

ALLNAMES.put("1", "语文");

ALLNAMES.put("2", "数学");

ALLNAMES.put("3", "英语");

Form allcheckform = new Form("allcheckform");

CheckGroup group = new CheckGroup("allcheckgroup",new ArrayList());

group.add(new CheckGroupSelector("allcheckgroupselector"));

ListView allsites = new ListView("allsites", ALLSITES) {

protected void populateItem(ListItem item) {

Object object=item.getModelObject();

item.add(new Check("allcheck", new

Model(Integer.toString(item.getIndex()))));

item.add(new Label("allcheckname",new Model((Serializable) ALLNAMES.get(object))));

}

};

this.add(onlysites);

group.add(allsites);

allcheckform.add(group);

this.add(allcheckform);

//下拉框

DropDownChoice dropdownchoice =

new DropDownChoice("dropsites",ALLSITES,renderer);

this.add(dropdownchoice);

//单选列表框

ListChoice listchoice =

new ListChoice("multiple",ALLSITES,renderer);

this.add(listchoice);

//单选组合框

ListMultipleChoice alllistchoice =

new ListMultipleChoice("allmultiple",ALLSITES,renderer);

this.add(alllistchoice);

RadioChoice radio =

new RadioChoice("onlyradio",ALLSITES,renderer);

this.add(radio);

//单选增强组合框

Form radioform = new Form("radioform");

add(radioform);

RadioGroup radiogroup=new RadioGroup("radiogroup");

radioform.add(radiogroup);

ListView radiosites = new ListView("radiosites", ALLSITES) {

protected void populateItem(ListItem item) {

Object object=item.getModelObject();

item.add(new Radio("radioradio", new Model(Integer.toString(item.getIndex()))));

item.add(new Label("radioname",new Model((Serializable) ALLNAMES.get(object))));

};

};

radiogroup.add(radiosites);

//静态图像

Image staticimg = new Image("staticimg","img/mks.jpg");

this.add(staticimg);

//动态图像

Image dynameicimg = new Image("dynameicimg",

new RenderedDynamicImageResource(200,100){

protected boolean render(Graphics2D graphics) {

graphics.drawString("看看生成以后的样子", 50, 50);

return true;

}

}

);

this.add(dynameicimg);

//文件上传

final FileUploadField fileup = new FileUploadField("upfileload");

Form upfileform = new Form("upfileform"){

protected void onSubmit(){

final FileUpload upload = fileup.getFileUpload();

if(upload!=null){

try {

upload.writeTo(new File("d:\\load\\1.txt"));

} catch (IOException e) {

e.printStackTrace();

}

}

super.onSubmit();

}

};

upfileform.add(fileup);

upfileform.setMultiPart(true);

upfileform.setMaxSize(Bytes.kilobytes(1000));

this.add(upfileform);

//数据列表

ListView listView = new ListView("listView", ALLSITES) {

protected void populateItem(ListItem item) {

String name = (String) ALLNAMES.get(item.getModelObject());

item.add(new Label("name", name));

item.add(new ExternalLink("url", (String) item.getModelObject()));

}

};

this.add(listView);

}

public final String loadonSubmit(String str){

String backstr = "";

if(this.getRequest().getParameter("uname") == null)

backstr = str + ";" + "请输入字符";

else

backstr = str + ";" + "你输入的字符为:" + this.getRequest().getParameter("uname");

return backstr;

}

}

2829f2ca24f0d0090cbba57f30759f23.png

JAVA技巧:wicket一些基础控件代码.doc

下载Word文档到电脑,方便收藏和打印[全文共6395字]

编辑推荐:

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

下载Word文档



推荐阅读
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • ASP.NET2.0数据教程之十四:使用FormView的模板
    本文介绍了在ASP.NET 2.0中使用FormView控件来实现自定义的显示外观,与GridView和DetailsView不同,FormView使用模板来呈现,可以实现不规则的外观呈现。同时还介绍了TemplateField的用法和FormView与DetailsView的区别。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 1.点击查看隐藏当前按钮和这个内容,显示另一个内容能。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • Go GUIlxn/walk 学习3.菜单栏和工具栏的具体实现
    本文介绍了使用Go语言的GUI库lxn/walk实现菜单栏和工具栏的具体方法,包括消息窗口的产生、文件放置动作响应和提示框的应用。部分代码来自上一篇博客和lxn/walk官方示例。文章提供了学习GUI开发的实际案例和代码示例。 ... [详细]
  • 深入理解CSS中的margin属性及其应用场景
    本文主要介绍了CSS中的margin属性及其应用场景,包括垂直外边距合并、padding的使用时机、行内替换元素与费替换元素的区别、margin的基线、盒子的物理大小、显示大小、逻辑大小等知识点。通过深入理解这些概念,读者可以更好地掌握margin的用法和原理。同时,文中提供了一些相关的文档和规范供读者参考。 ... [详细]
  • FineReport平台数据分析图表显示部分系列接口的应用场景和实现思路
    本文介绍了FineReport平台数据分析图表显示部分系列接口的应用场景和实现思路。当图表系列较多时,用户希望可以自己设置哪些系列显示,哪些系列不显示。通过调用FR.Chart.WebUtils.getChart("chartID").getChartWithIndex(chartIndex).setSeriesVisible()接口,可以获取需要显示的系列图表对象,并在表单中显示这些系列。本文以决策报表为例,详细介绍了实现方法,并给出了示例。 ... [详细]
  • Android系统源码分析Zygote和SystemServer启动过程详解
    本文详细解析了Android系统源码中Zygote和SystemServer的启动过程。首先介绍了系统framework层启动的内容,帮助理解四大组件的启动和管理过程。接着介绍了AMS、PMS等系统服务的作用和调用方式。然后详细分析了Zygote的启动过程,解释了Zygote在Android启动过程中的决定作用。最后通过时序图展示了整个过程。 ... [详细]
  • 本文介绍了RxJava在Android开发中的广泛应用以及其在事件总线(Event Bus)实现中的使用方法。RxJava是一种基于观察者模式的异步java库,可以提高开发效率、降低维护成本。通过RxJava,开发者可以实现事件的异步处理和链式操作。对于已经具备RxJava基础的开发者来说,本文将详细介绍如何利用RxJava实现事件总线,并提供了使用建议。 ... [详细]
  • JavaScript和HTML之间的交互是经由过程事宜完成的。事宜:文档或浏览器窗口中发作的一些特定的交互霎时。能够运用侦听器(或处置惩罚递次来预订事宜),以便事宜发作时实行相应的 ... [详细]
author-avatar
糖糖6
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有