Simple Form
表单和字段同样是Click框架中经常使用的控件。
下面的SimpleForm 提供了这些控件的一个简单应用。
在下面的例子代码中, 我们在表单中添加一个textfield字段和一个submit按钮, 同时
设置一个方法作为表单的控件监听器。
注意: 在本例中page的public类型的form字段被自动的添加到控件列表中。
public class SimpleForm extends Page {
public Form form = new Form();
public String msg;
// ------------------------------------------------------------ Constructor
public SimpleForm() {
form.add(new TextField("name", true));
form.add(new Submit("OK"));
form.setListener(this, "onSubmit");
}
// --------------------------------------------------------- Event Handlers
/**
* 处理表单的提交事件
*/
public boolean onSubmit() {
if (form.isValid()) {
msg = "Your name is " + form.getFieldValue("name");
}
return true;
}
}
然后我们新建SimpleForm 的模板 simple-form.htm。 Click会自动地把simple-form.htm
模板和SimpleForm 类关联起来。
<html>
<head>
$cssImports
</head>
<body>
$form
#if ($msg)
<div id="msgDiv"> $msg </div>
#end
</body>
</html>
$jsImports
当SimpleForm page被第一次请求的时候, $form 对象将自动地在页面上显示出来。
这里要说明的是,如果用户没有输入用户名就点击了Ok按钮来提交表单。 ClickServlet
将生成一个新的SimpleForm实例并处理表单控件,表单控件处理时发现该字段不合法,
所以onsubmit()方法简单的返回一个true。 之后, 表单将显示验证错误信息。
在提交和验证的时候表单将自动的维护输入的数据的状态。
现在如果用户输入了名字并点击了OK按钮, 表单将被验证通过并通过onSubmit()将msg信息
添加到Pages模型中。页面将显示如下:
Your name is John Masters
Advanced Form Example
AdvancedForm Page将提供一个使用表单的高级的例子,使用form、 field和fieldSet。
首先我们让AdvancedForm 在他的构造方法中生成一个Form。Form的Select列表
在页面的onInit()方法中被组装。此时, 要求page依赖的所有资源应该是有效的。
在本例中, page的public类型的form字段被自动地添加到控件列表中。
public class AdvancedForm extends Page {
public Form form = new Form();
public String msg;
private Select investmentSelect = new Select("investment");
// ------------------------------------------------------------ Constructor
public AdvancedForm() {
FieldSet fieldSet = new FieldSet("Customer");
form.add(fieldSet);
TextField nameField = new TextField("name", true);
nameField.setMinLength(5);
nameField.setFocus(true);
fieldSet.add(nameField);
fieldSet.add(new EmailField("email", true));
fieldSet.add(investmentSelect);
fieldSet.add(new DateField("dateJoined", true));
fieldSet.add(new Checkbox("active"));
form.add(new Submit("ok", " OK ", this, "onOkClicked"));
form.add(new Submit("cancel", this, "onCancelClicked"));
}
// --------------------------------------------------------- Event Handlers
/**
* @see Page#onInit()
*/
public void onInit() {
CustomerService customerService = getCustomerService();
investmentSelect.add(Option.EMPTY_OPTION);
investmentSelect.addAll(customerService.getInvestmentCatetories());
}
/**
* 处理Ok 按钮的Click事件
*
* @return true
*/
public boolean onOkClicked() {
if (form.isValid()) {
Customer customer = new Customer();
form.copyTo(customer);
getCustomerService().saveCustomer(customer);
form.clearValues();
msg = "A new customer record has been created.";
}
return true;
}
/**
* Handle the Cancel button click event.
*
* @return false
*/
public boolean onCancelClicked() {
setRedirect(HomePage.class);
return false;
}
}
新建AdvancedForm 的对应的模板advanced-form.htm, Click 会自动地将advanced-form.htm 模板与AdvancedForm 类关联起来。
<html>
<head>
$cssImports
</head>
<body>
#if ($msg)
<div id="msgDiv"> $msg </div>
#end
$form
</body>
</html>
$jsImports
当AdvancedForm 第一次请求页面的时候, $form 对象对显示出来。
在本例中,当Ok按钮被点击的时候onOkClicked()被调用。 如果表单是有效的,一个新的
customer 对象被创建并使用form的copyto()方法将表单字段的值拷贝到customer对象中去。之后, customer 对象被保存,表单字段值被清空, info信息被显示给用户。
Form Layout
上面我们使用了表单控件来生成html表单和字段。 对快速构建页面这是一个很
好的特点 。表单控件也提供了一些布局属性。参见后面的章节。
- 大小: 12.3 KB
- 大小: 4.5 KB
分享到:
相关推荐
Click框架快速入门指南 Click框架是一个轻量级、模块化的Java Web开发框架,它提供了简单易用的API,使得开发者可以快速构建高效、可维护的Web应用。本指南将帮助你了解Click的基本概念,以及如何使用它来创建一个...
### Apache Click Framework 介绍 #### 一、简介 Apache Click 是一个用于开发 Web 应用程序的 Java 框架,旨在提供一个简洁且高效的 API 来构建动态 Web 页面。Click 的设计目标是减少开发时间并提高代码的可读性...
试图安装第二种语言版本的 .NET Framework 时,将会导致出现以下错误:“安装程序无法安装 Microsoft .NET Framework,因为已经安装了该产品的其他版本。”如果您要使用非英语的平台或要以另一种语言查看 .NET ...
点击一次(ClickOnce)是 .NET Framework 中的一种应用程序部署技术,它允许开发者将应用程序部署到客户端计算机上,并且可以自动更新应用程序。下面是 ClickOnce 应用程序部署的相关知识点: 一、ClickOnce 部署...
ClickOnce则是一种Windows上的应用程序部署技术,它可以自动处理.NET Framework的依赖,确保目标机器上有正确的版本。 压缩包子文件"doNetVM"可能是一个工具或者库,用于帮助开发者实现这一目标,即创建不包含完整...
Robot Framework是一款广泛应用于自动化测试领域的开源测试框架,它支持关键词驱动测试方法,使得测试脚本易于编写和维护。PageObject模式是一种设计模式,常用于Web应用程序的自动化测试中,将网页或页面作为一个...
Click Framework是一个易于学习和使用的J2EE Web应用程序框架。 Click是为商业Java团队开发的Web应用程序而设计的。 使用Click,开发人员应该能够在一天内启动并运行。
4. **部署和更新机制**:通过ClickOnce技术,开发者可以轻松地将应用程序部署到目标设备,并进行后续的更新和维护。 5. **设备兼容性**:.NET Compact Framework设计时考虑了各种不同类型的设备,确保应用程序可以...
10. **部署与更新**:为了简化应用程序的部署,4.0版本引入了ClickOnce技术,使得用户可以轻松地安装、更新和卸载应用程序。 总之,.NET Framework 4.0是一个强大且全面的开发平台,提供了多种工具和技术来支持高效...
《深度挖掘.NET Framework 2.0系列课程——(1)Click-Once安装技术》 在.NET Framework 2.0时代,微软引入了一项创新的部署技术——Click-Once,它为开发者提供了一种简单而安全的方式,使得应用程序可以被用户轻松...
同时,ClickOnce部署技术使得应用程序能够轻松实现单击安装和自动更新。 在安全性方面,.NET Framework 2.0加强了代码访问安全,允许管理员控制应用程序的权限,减少了恶意代码的危害。此外,它还支持基于角色的...
试图安装第二种语言版本的 .NET Framework 时,将会导致出现以下错误:“安装程序无法安装 Microsoft .NET Framework,因为已经安装了该产品的其他版本。”如果您要使用非英语的平台或要以另一种语言查看 .NET ...
#### 二、Selenium Library 的安装 为了实现 Robot Framework 与 Selenium 的结合,首先需要安装 Selenium Library。以下是一步一步的安装指导: 1. **Python 环境准备**: - 首先确保已经安装了 Python 环境。 -...
Click Element id=login ``` 9. **运行测试** 在RIDE中,你可以右键点击测试用例或测试套件并选择“Run”来执行测试。在命令行中,可以使用`robot`命令来运行测试用例文件: ``` robot 测试用例文件路径 ``` ...
在部署和配置方面,.NET Framework 2.0引入了ClickOnce技术,它允许应用程序的快速部署和自动更新,降低了用户的安装和升级成本。 文件列表中的"1.pptx"可能包含与.NET Framework 2.0相关的讲座或教程材料,而...
6. **部署与更新**:.NET Framework 2.0支持ClickOnce部署,这是一种简化应用程序部署的机制,可以自动处理版本更新和依赖项检查。同时,Windows Installer MSI包(如Project.msi)可以用于分发和安装.NET Framework...
VS2010的路径是C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX35SP1 更高版本路径是C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX35SP1...
ClickOnce 应用程序发行者可以决定在适当情况下不进行签名和加密,开发人员可以编程方式安装 ClickOnce 应用程序以显示自定义署名,并且 ClickOnce 错误对话框支持链接到 Web 上应用程序特定的支持网站。 实体框架...
九、部署与生命周期管理:理解ClickOnce部署、GAC(全局程序集缓存)以及.NET Framework的版本兼容性问题,有助于顺利发布和更新应用程序。 十、性能优化:通过分析工具如Profiler,了解内存分配、CPU使用和瓶颈,...