(华为)以下代码片段将创建一个仅保存大写字符的字段。
2013-08-10 15:28
218 查看
通过对模型进行扩展和改变所提供的默认模型,可以很容易创建自定义字段。例如,以下代码片段将创建一个仅保存大写字符的字段。即使文本从剪贴板中粘贴过来或者通过编程方式而更改,此代码片段也是有效的。
public class UpperCaseField extends JTextField { public UpperCaseField(int cols) { super(cols); } protected Document createDefaultModel() { return new UpperCaseDocument(); } static class UpperCaseDocument extends PlainDocument { public void insertString(int offs, String str, AttributeSet a) throws BadLocationException { if (str == null) { return; } char[] upper = str.toCharArray(); for (int i = 0; i < upper.length; i++) { upper[i] = Character.toUpperCase(upper[i]); } super.insertString(offs, new String(upper), a); } } }
相关文章推荐
- (华为)以下代码片段将创建一个仅保存大写字符的字段。
- 对于一个表中字段保存的是代码,怎么用Struts+Hibernate将名称显示出来
- C语言 创建一个 txt 文件 bin输入字符 保存文件在工作文件夹里
- 创建一个字符串数组,总共5个元素,每个元素最多保存30个字符,写一个函数排序整个数组。
- //1.编写代码模拟三次密码输入的场景。//2.编写一个程序,可以一直接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。
- 创建一个字符串数组,总共5个元素,每个元素最多保存30个字符,写一个函数排序整个数组。
- Android官方入门文档[16]创建一个Fragment代码片段
- 用12个字符以下的可编译的代码实现控制台输出一个'A'
- "abc"已经被创建并保存于字符串池中,因此JAVA虚拟机只会在堆中新创建一个String对象,但是它的值(value)是共享前一行代码执行时在栈中创建的三个char型值值'a'、'b'和'c'
- 个人学习代码保存:例10.通过模板创建静态页面的操作文件的一个自定函数
- sql server 2008 不允许保存更改,您所做的更改要求删除并重新创建以下表 的解决办法
- 分享一个php代码创建目录的Demo
- 10_9_1编写代码,定义一个基类MyClass,其中包括虚礼方法GetString(),这个方法返回存储在受保护字段myString中的字符串,该字段可以通过只写公共属性ContainedStrin
- JS创建表单并提交以及限制用户输入某一个字符
- 数据窗口字段保存显示超过255个字符
- 不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的表进行了更改或启用了“阻止保存要求重新创建表的更改”选项
- 位运算一个字段保存多种意义的状态数据
- 关于360笔试题的一个题目的以下代码执行后输出结果为()思考
- 代码片段-PHP-UTF8中文字符截断
- 华为2016笔试题(输入一个字符串,求出该字符串包含的字符集合)