你们好,最近小未来发现有诸多的小伙伴们对于swing a cat,swing这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。
1、 创建JFrame
2、 这里有一个简单的例子来演示JavaSwing创建一个可以输入内容的窗口。
3、 publicclassframeTest(){
4、 publicstaticvoidMain(Stringargs[]){
5、 //创建一个JFrame对象,用于在屏幕上显示一个Windows窗口。
6、 JFrameframe=newJFrame('第一个JFrame’);
7、 //创建文本输入字段对象。因为文本输入字段是JComponent的子类,所以可以使用。
8、 //定义方法。
9、 JComponentcomp=newJTextArea();
10、 //将上面建立的文本输入字段添加到frame对象中。
11、 //默认情况下,frame的内容面板(容器)采用BorderLayout布局。
12、 //这是文本输入字段放入BorderLayout的中心部分。
13、 //有关BorderLayout布局的内容,请参见
14、 //http://gyfinjava.blog.com.cn/archives/2007/2161340.shtml
15、 frame.getContentPane().add(comp,BorderLayout.CENTER);
16、 //将其高度和宽度分别设置为288像素和188像素。
17、 frame.setSize(288,188);
18、 //显示框架。
19、 frame.setVisible(true);
20、 }
21、 }
22、 JFrame的预定义动作事件
23、 将以下代码添加到JavaSwing教程1中的Main方法中:
24、 //当用户选择窗口的退出按钮(窗口右上角的X)时,
25、 //或者窗体功能菜单的弹出项被选中时的动作。
26、 //下面的代码可以让你在点击退出按钮的时候退出JFrame。
27、 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
28、 //下行代码可以禁用JFrame的退出按钮。
29、 frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
30、 创建一个没有边框的框架(窗口)。
31、 这个例子演示了如何创建一个没有边框的框架(窗口)。如果你想创造
32、 不显示边框的Frame(Window),则推荐使用JWindow。
33、 importjavax.swing.JWindow;
34、 publicclassJWindowTest{
35、 publicstaticvoidmain(String[]args){
36、 //创建JWindows对象
37、 JWindowwindow=newJWindow();
38、 //这里,一样可以通过教程getContentPane().add()方法为该JWindow增加组件
39、 //window.getContentPane().add(JComponent,BorderLayout.CENTER);
40、 //设置初始化大小
41、 window.setSize(200,200);
42、 //显示该窗体
43、 window.setVisible(true);
44、 }
45、 }
46、 JavaSwing教程4-文件选择框
47、 Java为文件选择框提供了JFileChooser类API。通过使用该类,可以很方便的现实文件选择对话框。见下例:
48、 //建立文件选择框对象
49、 JFileChooserfc=newJFileChooser();
50、 //设定文件选择框标题
51、 fc.setDialogTitle('OpenclassFile');
52、 //显示文件选择框,在选择后将结果储存到returnVal变量中
53、 intreturnVal=fc.showOpenDialog(app.getFrameInstance());
54、 //如果用户选择了文件,并点击了'Opne/打开'按钮,显示用户选择的文件全名路径,
55、 //如果用户点击'Close/关闭'按钮,以及其它方式退出文件选择框,则什么也不做。
56、 if(returnVal==JFileChooser.APPROVE_OPTION){
57、 Filefile=fc.getSelectedFile();
58、 System.out.println(file.getPath());
59、 }
60、 注意在文件选择对话框中,可以进行选择目录的操作,只需要用FileChooser对象的setFileSelectionMode()方法指定其选择模式为目录选择。见下面代码
61、 //上例中可以在文件对话框显示语句前加上下面代码,使对话框成为目录选择对话框
62、 fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
63、 在文件选择过程中,我们可以为文件选择对话框设置过滤器,有了过滤器的对话框,会用下拉列表的方式将过滤的文件名特征显示在'文件类型'组合框中,并将不符合条件的文件名和目录名过滤掉(不显示)。
64、 为一个文件选择对话框设置过滤器需要定义过滤器类,见下例:
65、 publicclassClassFileFilterextendsFileFilter{
66、 publicbooleanaccept(Filef){
67、 Stringfilename=f.getName();
68、 returnfilename.endsWith('.class');
69、 }
70、 publicStringgetDescription(){
71、 return'*.class';
72、 }
73、 }
74、 该类定义了一个过滤Java类文件'*.class'的过滤器。
75、 将它增加到文件选择对话框中,可以过滤出以.class为尾缀的文件。见下面代码:
76、 fc.addChoosableFileFilter(newClassFileFilter());
77、 针对一个对话框,我们可以为其加装多个过滤器。这里有对过滤器更加诠释的代码:
78、 publicclassImageFilterextendsFileFilter{
79、 //Acceptalldirectoriesandallgif,jpg,tiff,orpngfiles.
80、 publicbooleanaccept(Filef){
81、 if(f.isDirectory()){
82、 returntrue;
83、 }
84、 Stringextension=Utils.getExtension(f);
85、 if(extension!=null){
86、 if(extension.equals(Utils.tiff)||
87、 extension.equals(Utils.tif)||
88、 extension.equals(Utils.gif)||
89、 extension.equals(Utils.jpeg)||
90、 extension.equals(Utils.jpg)||
91、 extension.equals(Utils.png)){
92、 returntrue;
93、 }else{
94、 returnfalse;
95、 }
96、 }
97、 returnfalse;
98、 }
99、 publicStringgetDescription(){
100、 return'JustImages';
101、 }
102、 }
103、 该过滤器为图像文件过滤器。
104、 JavaSwing教程5-JTable
105、 利用J2SE提供的JTable组件类可以很方便的实现应用程序中的表格功能,以实例阐述如下:
106、 该实例运行结果如下:
107、 其代码如下:
108、 importjava.awt.BorderLayout;
109、 importjava.awt.Dimension;
110、 importjavax.swing.JFrame;
111、 importjavax.swing.JPanel;
112、 importjavax.swing.JScrollPane;
113、 importjavax.swing.JTable;
114、 publicclassTest01{
115、 publicstaticvoidmain(String[]args){
116、 //声明列名数组
117、 String[]columnNames={'姓名','性别','年龄','籍贯','婚否'};
118、 //声明数据二维数组
119、 Object[][]data={
120、 {'赵刚','男',newInteger(18),'北京',newBoolean(false)},
121、 {'钱霞','女',newInteger(28),'北京',newBoolean(true)},
122、 {'孙大伟','男',newInteger(32),'上海',newBoolean(false)},
123、 {'李民','男',newInteger(30),'南京',newBoolean(true)},
124、 {'周丽丽','女',newInteger(34),'重庆',newBoolean(false)}};
125、 //创建JTable对象t
126、 finalJTablet=newJTable(data,columnNames);
127、 //设置JTable对象的可视区,超出部分会用下面的滚动条来显示
128、 t.setPreferredScrollableViewportSize(newDimension(400,70));
129、 //定义一个容器
130、 JPanelp=newJPanel();
131、 //在容器中加入表格和滚动条
132、 p.add(t);
133、 JScrollPanes=newJScrollPane(t);
134、 p.add(s);
135、 //设置容器为透明的
136、 p.setOpaque(true);
137、 //以下代码在前几个JavaSwing教程中已经讲过,这里不重复!
138、 JFramef=newJFrame('JTable测试!');
139、 f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
140、 f.getContentPane().add(p,BorderLayout.CENTER);
141、 f.pack();
142、 f.setVisible(true);
143、 }
144、 }
以上就是swing这篇文章的一些介绍,希望对大家有所帮助。