简单生活 发表于 2015-1-18 11:29:58

JAVA编程:明天用了一下JSpinner

C#是不行的,比如说美国的航天飞船里就有java开发的程序以上是我的愚见,其实不管那种语言,你学好了,都能找到好的工作,js明天用了一下JDK1.4中新增的JSpinner,它可以便利地选择日期、数字或列表中的选项。

JSpinner示例


用户利用组件或键盘上的上移和下移箭头举行选择。他们也可输出本人的选择。但是,与JComboBox分歧,JSpinner不供应下拉列表选择,以是各个选择和它们的按次应有必定的意义。

要利用类,可复杂地创立一个供选择的元素汇合(在List或数组中),从列表中创立一个SpinnerModel,并为模子创立一个JSpinner:

清单1.复杂的JSpinner用法

String[]months=newDateFormatSymbols().getMonths();
SpinnerModelmodel=newSpinnerListModel(months);
JSpinnerspinner=newJSpinner(model);






依据您所用的输出范例,有以下几个可用于创立组件数据模子的匡助类:

SpinnerDateModel:用于承受日期输出。该类撑持经由过程将Calendar类中的常数设置为分歧的值来变动日期;比方,Calendar.WEEK_OF_MONTH每次将日期变动一周。


SpinnerListModel:用于承受来自值列表的输出。


SpinnerNumberModel:用于承受已设定好步长的必定局限内的数字(int或double)的输出。
每一个SpinnerModel实行取决于用于输出值的编纂器。此编纂器必需是一个JComponent;体系界说的编纂器子类JSpinner.DefaultEditor。个中一个可用于每一个模子:

JSpinner.DateEditor:用于SpinnerDateModel。同意您定制输出日期格局。

JSpinner.ListEditor:用于SpinnerListModel。撑持type-ahead来对值举行定位。

JSpinner.NumberEditor:用于SpinnerNumberModel。同意您定制十进制格局的形式。


事务处置
JSpinner组件象别的Swing组件一样事情。假如您有乐趣查出用户变动选择的工夫,请连一个侦听器。关于JSpinner,侦听器是一个ChangeListener,您可间接将其连到JSpinner或其SpinnerModel上。固然您可将侦听器连到二者中的恣意一个,当值产生变动时,ChangeEvent的源老是SpinnerModel:

清单2.JSpinner事务侦听

ChangeListenerlistener=newChangeListener(){
publicvoidstateChanged(ChangeEvente){
SpinnerModelsource=(SpinnerModel)e.getSource();
System.out.println("Thevalueis:"+source.getValue());
}
};
model.addChangeListener(listener);






一个完全的示例
让我们来看一下利用全体三种分歧的spinner模子的示例(清单3)。列表模子利用从DateFormatSymbols类掏出的月份称号集。日期模子示例变动编纂器的输出格局。当利用该字段中间的箭头时,每次也可将日期挪动一周。数字模子示例让用户拔取从0到100之间的一个数字,当利用箭头时每次跳5个数。请注重:用户可输出恣意数字,而其实不仅限于5的倍数。

关于一切组件来讲,当每一个spinner值的确产生变动时,所连的侦听器将显现统一改动。假如利用光标键变动月、日或年,您会注重到直到按下回车键这些值才产生变动。

清单3.JSpinner完全示例

importjavax.swing.*;
importjavax.swing.event.*;
importjava.text.*;
importjava.awt.*;
importjava.util.*;

publicclassSpinner{
publicstaticvoidmain(Stringargs[])throwsException{
JFrameframe=newJFrame("Spinner");
frame.setDefaultCloseOperation(3);
String[]months=newDateFormatSymbols().getMonths();
SpinnerModelmodel=newSpinnerListModel(months);
JSpinnerspinner=newJSpinner(model);
frame.getContentPane().add(spinner,BorderLayout.NORTH);

SpinnerDateModelmodel2=newSpinnerDateModel();
model2.setCalendarField(Calendar.WEEK_OF_MONTH);
JSpinnerspinner2=newJSpinner(model2);
JSpinner.DateEditoreditor2=newJSpinner.DateEditor(
spinner2,"MMMMMdd,yyyy");
spinner2.setEditor(editor2);
frame.getContentPane().add(spinner2,BorderLayout.SOUTH);

SpinnerNumberModelmodel3=newSpinnerNumberModel(50,0,100,5);
JSpinnerspinner3=newJSpinner(model3);
frame.getContentPane().add(spinner3,BorderLayout.CENTER);

ChangeListenerlistener=newChangeListener(){
publicvoidstateChanged(ChangeEvente){
SpinnerModelsource=(SpinnerModel)e.getSource();
System.out.println("Thevalueis:"+source.getValue());
}
};
model.addChangeListener(listener);
model2.addChangeListener(listener);
model3.addChangeListener(listener);

frame.pack();
frame.show();
}
}




再说第三点:我并没有提到服务器也要整合,然后是IDE,一个好的IDE能够200%提高开发的速度,就说图形方面:你是经过简单托拽和点击就能实现功能好那。

活着的死人 发表于 2015-1-21 08:40:16

Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台

金色的骷髅 发表于 2015-1-25 09:36:13

当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?

分手快乐 发表于 2015-2-2 18:29:46

那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!

简单生活 发表于 2015-2-8 04:14:20

Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。

爱飞 发表于 2015-2-9 07:30:51

应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展

谁可相欹 发表于 2015-2-23 12:36:45

如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。

第二个灵魂 发表于 2015-3-7 12:43:12

Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。

山那边是海 发表于 2015-3-11 11:59:28

你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?

变相怪杰 发表于 2015-3-18 10:07:21

是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言

老尸 发表于 2015-3-25 14:40:32

J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
页: [1]
查看完整版本: JAVA编程:明天用了一下JSpinner