- 浏览: 1728781 次
- 性别:
- 来自: 沈阳
文章分类
- 全部博客 (288)
- java (59)
- javaweb (15)
- eclipse (16)
- uml (1)
- java ee (7)
- windows (5)
- html (4)
- 数据结构和算法 (6)
- oracle (84)
- struts (3)
- ajax (3)
- hibernate (3)
- spring (12)
- ExtJS (14)
- 随笔 (2)
- JavaScript (9)
- PL SQL (12)
- tomcat (2)
- Plugins (5)
- office (2)
- webService (4)
- others (9)
- htc (1)
- 自定义标签的行为 (1)
- powerDesigner (3)
- webSphere (5)
- linux (6)
- dom4j (1)
- xml (5)
- json (2)
- bat (4)
- spring MVC (5)
- MySQL (12)
- junit (4)
- maven (10)
- jquery (1)
- mongoDB (16)
- git (0)
- mybatis (5)
- svn (3)
- activemq (3)
- quartz_job (1)
最新评论
-
白天看黑夜:
PDMReader实现pdm建模快速导出word,html文件 ...
利用powerDesigner逆向导出oracle表为PDM并把PDM转为CDM -
sanshao:
roompig 写道beancopier只实现了浅拷贝的功能, ...
使用Cglib的BeanCopier实现Bean的拷贝 -
贝塔ZQ:
Java实现导入导出excel文件,利用poi实现感觉代码比较 ...
利用java导入导出excel到oracle数据库 -
suxj16:
部署之后启动有问题org.springframework.be ...
spring mvc文件上传实现进度条(转) -
suxj16:
谢谢分享。部署之后启动有问题org.springframewo ...
spring mvc文件上传实现进度条(转)
本章目标:
通过本章的学习,读者应能知道GUI(图形用户界面)的概念,并且能够使用Java语言来构建一个令人心旷神怡的GUI界面,使你的程序更具有感召力。把握标签、按钮、文本框、选择框、滚动条……等等各种GUI部件的使用方法。
9.1 用什么构建GUI
传授新知
早期,电脑向用户提供的是单调、枯燥、纯字符状态的“命令行界面(CLI)”。就是到现在,我们还可以依稀看到它们的身影:在Windows中开个DOS窗口,就可看到历史的足迹。
后来,Apple公司率先在电脑的操作系统中实现了图形化的用户界面(Graphical User Interface,简称GUI),但由于Apple公司封闭的市场策略,自己完成电脑硬件、操作系统、应用软件一条龙的产品,与其它PC不兼容。这使得Apple公司错过了一次一统全球PC的好机会。
后来,闻名的Microsoft公司推出了风靡全球的Windows操作系统,它凭借着优秀的图形化用户界面,一举奠定了操作系统标准的地位。这也造就了世界首富---比尔.盖茨和IT业的泰山北斗微软公司。
在这图形用户界面风行于世的今天,一个应用软件没有良好的GUI是无法让用户接受的。而Java语言也深知这一点的重要性,它提供了一套可以轻松构建GUI的工具。在本章和下一章中,我们将向你充分证实这一点。
在Java语言提供的GUI构建工具中,可以分为“部件”(component)和“容器”(container)两种。
在Java语言中,提供了以下部件:
§ 按钮
§ 标签
§ 复选框
§ 单选按钮
§ 选择框
§ 列表框
§ 文本框
§ 滚动条
§ 画布
§ 菜单
这些部件,我们在使用Windows操作系统时都碰到过,你通过操作它们来实现与程序的交互。
而光有“部件”就组不成程序,我们必须使用“容器”将这些“部件”装配起来,使其成为一个整体。Java语言还提供了以下“容器”:
§ 程序的启动封面
§ 窗体(form)
§ 对话框(Dialog)
Java语言是通过AWT(抽象窗口化工具包)和Java基础类(JFC或更常用的Swing)来提供这些GUI部件的。
其中Java.awt是最原始的GUI工具包,存放在java.awt包中。现在有许多功能被已被Swing取代并得到了很大的增加与提高,因此一般我们很少再使用Java.awt,但是AWT中还是包含了最核心的功能,通常,一个Java的GUI程序至少还要使用下面几个类:
§ java.awt.Color:基本颜色定义
§ java.awt.Font:基本字体定义
§ java.awt.Cursor:光标操作定义
而Swing则存放在javax.swing包中。
我们可以在Java的GUI程序的最前面加上以下两句就可以了:
import java.awt.*;
import javax.swing.*;
这样就可以一劳永逸了。
用Java开发一个GUI程序,通常需要以下几步:
1) 构建一个顶层容器;
2) 构建一个部件;
3) 用容器的add方法将部件加入到这个容器中;
我们马上就开始!
自测练习
1) 在Java语言中,用来构建GUI的工具可以分为________和__________。
a.控件 b.部件 c.窗体 d.容器
2) 下面不属于“部件”的是__________。
a.选择框 b.窗体 c.菜单
3) 下面不属于“容器”的是__________。
a.文本框 b.对话框 c.窗体
4) 容器可以被添加到其它容器中去。________
a.正确 b.不正确
5) 部件可以被添加到容器中去。_______
a.正确 b.不正确
6) 容器可以被添加到部件中去。_______
a.正确 b.不正确
7) 部件可以被添加到其它部件中去。_______
a.正确 b.不正确
练习答案
1)b、d 在Java语言中,GUI构建工具可以分为部件与容器。
2)b 窗体是一种容器,不是部件。
3)a 文本框是一种部件,不是容器。
4)a 有些容器可以被包含到其它容器中去。
5)a 容器就是用来放置各种部件的。
6)b 将部件装到容器去,就象“把桶装到水中”一样可笑。
7)b “把水装到水中”也是可笑的呀。
9.2 使用Button(按钮)
实例说明
1.首先,我们使用文字编辑软件输入下源程序。
源程序:useButton.java
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class useButton extends JApplet { JButton button1; public void init() { JPanel panel1=(JPanel)getContentPane(); panel1.setLayout(new FlowLayout()); button1=new JButton(“Beep!”); panel1.add(button1); button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { Toolkit.getDefaultToolkit().beep(); } }); } }
2.执行以下命令,编译这个程序:
c:javastudy> javac useButton.java
由于,这是一个Java Applet(小应用程序),需要在网页上显示,所以我们需要编辑一个包含这个小应用程序的Html文件。形如:
源程序:useButton.html
<html> <body> <applet code="useButton.class" WIDTH=150 HEIGHT=100> </applet> </body> </html>
3.然后使用appletviewer来运行这个程序:
c:javastudy> appletviewer useButton.html
你试着按一下“Beep!”这个按钮,每按一下就会响一声。
传授新知
我们一起来看一下这个冗长而且令人费解的程序段。
1)
import javax.swing.*; import java.awt.*; import java.awt.event.*;
这一段程序是用来将构建GUI程序所需的包包含进来。
2)
public class useButton extends JApplet
这一句用来声明类useButton,说明它是从JApplet中继续而来的子类。JApplet是Applet类的一种增强类。因此,从这里可以看出这个程序是Java小应用程序,而不是Java应用程序。
3)
JPanel panel1=(JPanel)getContentPane(); panel1.setLayout(new FlowLayout());
这一段程序创建了一个Jpanel(面板)容器:panel1,然后调用setLayout方法显示它。
4)
button1=new JButton(“Beep!”); panel1.add(button1);
这一段程序创建了一个新的部件:button1按钮,并将按钮上显示标签“Beep!”。然后调用容器panel1的add方法将这个按钮添加到这个面板上。
5)
button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { Toolkit.getDefaultToolkit().beep(); } });
这是一个非凡的事件,它为按钮buuton1添加上一个ActionListener(action:行动、事件;Listener:监听者),也就是事件监视器。这个监视器做什么呢?
当actionPerformed(action:行动、事件;Performed:执行,表演),就是当这个事件执行时(什么事件呢?ActionEvent evt,按下按钮时),将执行:Toolkit.getDefaultToolkit().beep()
也就是响铃。
自测练习
1)按钮类中提供了一个方法,可以修改按钮文本的颜色。以下就是一个应用实例:
button1.setForeground(Color.green);
其中button1是按钮名,setForeground则方法名,set就是设置,Foreground就是前景,也就是设置前景色。参数是Color.green,绿色。相对应的,红色就是Color.red,蓝色就是Color.blue。
请编写一个程序,在面板上显示三个按钮,按钮上的标签分别是:set red,set green,set blue(颜色为黑色)。当按下set red按钮,则三个按钮的标签都变成红色;而按下set green则变成绿色;按下set blue则变成蓝色。
2)按钮类中还提供了一个方法,可以修改按钮标签。以下就是一个应用实例:
button1.setText(“OK”);
其中button1是按钮名,setText是方法名,set就是设置,Text就是文本,也就是设置按钮上的文本色。参数是”OK”。这样就会将button1的标签改为”OK”。
请使用这个方法修改程序useButton,使得按钮上显示按过的次数,假如没有按下,则仍显示“Beep!”。只需写出修改的部分。
练习答案
1) 以下就是一个实现实例:
源程序:lianxi901.java
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class lianxi901 extends JApplet { JButton buttonRed; JButton buttonGreen; JButton buttonBlue; public void init() { JPanel panel1=(JPanel)getContentPane(); panel1.setLayout(new FlowLayout()); buttonRed=new JButton(“set red”); buttonGreen=new JButton(“set green”); buttonBlue=new JButton(“set blue”); panel1.add(buttonRed); panel1.add(buttonGreen); panel1.add(buttonBlue); buttonRed.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { buttonRed.setForeground(Color.red); buttonGreen.setForeground(Color.red); buttonBlue.setForeground(Color.red); } }); buttonGreen.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { buttonRed.setForeground(Color.green); buttonGreen.setForeground(Color.green); buttonBlue.setForeground(Color.green); } }); buttonBlue.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { buttonRed.setForeground(Color.blue); buttonGreen.setForeground(Color.blue); buttonBlue.setForeground(Color.blue); } }); } }
通过构建一个HTML文件,使其包含这个Applet后,以下就是一个运行效果之一:
2) 要实现这个功能很简单,只需做两个修改:
a. 在变量定义处加入一个新的变量定义:
int counter=0;
b.在button1的addActionListener方法中的actionPerformed中加入一行:
Button1.setText(String.valueOf(++counter));
9.3 使用Label(标签)
实例说明
1.首先,我们使用文字编辑软件输入下源程序。
源程序:useLabel.java
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class useLabel extends JApplet { JLabel label1; public void init() { label1=new JLabel(“This is a java label!”); label1.setHorizontalAlignment(SwingConstants.CENTER); label1.setVerticalAlignment(SwingConstants.TOP); label1.setBackground(Color.red); label1.setOpaque(true); label1.setForeground(Color.white); label1.setToolTipText(“Hello,I am a Java Label!”); panel1.add(label1); } }
2.使用javac编译这个程序。
3.编辑一个显示这个Java Applet的页面:
源程序:useLabel.html
<html> <body> <applet code="useLabel.class" WIDTH=150 HEIGHT=100> </applet> </body> </html>
4.最后使用appletviewer来运行这个程序:
c:javastudy> appletviewer useLabel.html
传授新知
我们可以看到这一段程序,与useButton.java十分类似,在类的前面,包含了编写GUI程序要使用的包:javax.swing.*、java.awt.*和java.awt.event.*。
接着,通过使用“extends JApplet”说明useLabel类也是一个小应用程序(Applet)。在init方法中,首先创建了一个容器---Panel,用来放置后面创建的“标签”。我们下面就认真地看一下关于Label的语句:
1)
label1=new JLabel(“This is a java label!”);
类似的,我们使用new来创建一个Label实例,参数“This is a java label!”就是标签要显示的内容。假如省略这个标签,将创建一个空标签,什么也不会显示。
一些提示:
在Java语言中,标签提供了一个setText方法,可以用来设置它显示的内容。
2)
Label类提供两个设置其对齐方式的方法:
§ setHorizontalAlignment:设置水平对齐方式;
它的有效参数是:
¨ SwingConstants.LEFT:左对齐;(默认值,也就是不设置时则左对齐)
¨ SwingConstants.CENTER:居中对齐;
¨ SwingConstants.RIGHT:右对齐;
§ setVerticalAlignment:设置垂直对齐方式;
它的有效参数是:
¨ SwingConstants.TOP:向上对齐;
¨ SwingConstants.CENTER:居中对齐;(默认值,也就是不设置时居中对齐)
¨ SwingConstants.BOTTOM:向下对齐;
3) label1.setBackground(Color.red);
label1.setOpaque(true);
setBackground方法用来设置标签的背景色。但是Java的Swing部件默认状态下是不透明的,在这种状态下是无法显示背景色的。因此,我们还需使用setOpaque(true)方法使该部件变为透明的。
4)label1.setForeground(Color.white);
与按钮一样,我们可以使用setForeground方法来设置字符颜色。
5)label1.setToolTipText(“Hello,I am a Java Label!”);
在Windows的界面中,许多工具按钮都提供了一个这样的功能:当你将鼠标放在这个按钮上面一会儿,就会出现一个帮助性的提示。在Java语言中,我们可以很简单地使用:
部件.setToolTipText(“提示信息”)
来实现这个功能。
一些提示:
其实“按钮”部件也可以使用这个方法来显示提示信息。
6)panel1.add(label1);
最后,我们使用容器panel的add方法,将这个标签放置到容器中。
自测练习
1) 标签Label上显示的文本信息一经定后,就不能在程序中动态修改。________
a. 错 b.对
2) 对于一个Label来说,默认的水平对齐方式是:________。
a.SwingConstants.CENTER b.SwingConstants.RIGHT
c.SwingConstants.LEFT
3) 对于一个Label来说,默认的垂直对齐方式是:________。
a.SwingConstants.CENTER b.SwingConstants.BOTTOM
c.SwingConstants.TOP
4) 要获得一个Label上显示的文本信息,应使用_________方法。
a.setText b.getText c.getContent
5)标签类中提供了一个方法,可以修改标签上显示的文本。以下就是一个 应用实例:
label1.setText(“new text!”);
请编写一个程序,在面板左边显示一个标签,右边显示一个按钮,按钮上显示“Plus one”,标签显示为“0”。每按一次按钮,标签上显示的数字就加1.
一些提示:
在Java中,我们还可以使用getText来获得标签上显示的文本信息。
练习答案
1)a 在程序中可以使用setText方法动态修改Label显示的文本信息。
2)c 默认是水平左对齐。
3)a 默认是垂直居中对齐。
4)b setText方法是设置文本,getText是获取文本,并没有getContent方法。
5)以下就是一个实现该功能的程序实例:
源程序:lianxi902.java
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class lianxi902 extends JApplet { JButton button1; JLabel label1; int counter=0; public void init() { JPanel panel1=(JPanel)getContentPane(); panel1.setLayout(new FlowLayout()); label1=new JLabel(String.valueOf(counter)); label1.setIcon("winupd.ico");//改错 button1=new JButton("Plus one"); panel1.add(label1); panel1.add(button1); button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { label1.setText(String.valueOf(++counter)); } }); } }
9.4 复选框与单选按钮
实例说明
1.首先,我们使用文字编辑软件输入下源程序。
源程序:useCheckbox.java
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class useCheckbox extends JApplet { JButton button1; int counter=0; Checkbox setbeep,setcounter,red,green,blue; CheckboxGroup colorSel; public void init() { JPanel panel1=(JPanel)getContentPane(); panel1.setLayout(new FlowLayout()); setbeep=new Checkbox("Beep when press button"); setcounter=new Checkbox("Counter press time"); panel1.add(setbeep); panel1.add(setcounter); colorSel=new CheckboxGroup(); red=new Checkbox("Set red",colorSel,true); green=new Checkbox("Set green",colorSel,false); blue=new Checkbox("Set blue",colorSel,false); panel1.add(red); panel1.add(green); panel1.add(blue); red.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent evt) { if(evt.getStateChange()==ItemEvent.SELECTED) button1.setForeground(Color.red); } }); green.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent evt) { if(evt.getStateChange()==ItemEvent.SELECTED) button1.setForeground(Color.green); } }); blue.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent evt) { if(evt.getStateChange()==ItemEvent.SELECTED) button1.setForeground(Color.blue); } }); button1=new JButton("Press me"); panel1.add(button1); button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { doButton1Action(); } }); } public void doButton1Action() { if (setbeep.getState()) Toolkit.getDefaultToolkit().beep(); if (setcounter.getState()) button1.setText("press: "+String.valueOf(++counter)); else button1.setText("Press me"); } }
2.使用javac编译这个程序,然后编辑一个显示这个Java Applet的页面:
源程序:useCheckbox.html
<html> <body> <applet code="useCheckbox.class" width=320 height=150> </applet> </body> </html>
4.最后使用appletviewer来运行这个程序
传授新知
从我们学习Java开始,这个示例程序是大家碰到的最长的一个。大家不要被它吓退,这个程序阅读起来一样并不困难。下面,我们就对程序做一些点评。
1)
setbeep=new Checkbox("Beep when press button"); setcounter=new Checkbox("Counter press time"); panel1.add(setbeep); panel1.add(setcounter);
在这一段程序中,我们定义了两个Checkbox:setbeep和setcounter。
在Java语言中,Checkbox类定义了复选框。复选框用来让用户做出某种选择,正如上图所示,答应选中多个复选框。
在前两句中,我们使用new创建了这两个复选框;而在后两句中,我们使用容器Panel的add方法将它们装入Panel。
2)
colorSel=new CheckboxGroup(); red=new Checkbox("Set red",colorSel,true); green=new Checkbox("Set green",colorSel,false); blue=new Checkbox("Set blue",colorSel,false); panel1.add(red); panel1.add(green); panel1.add(blue);
而这一段程序则是用来定义red、green和blue三个单选按钮。在Java语言中,单选按钮被看作是一组非凡的复选框。我们使用一个CheckboxGroup将它们组成一个组,这样就只答应这个组里的“复选框”只能有一定被选中,这就形成了单选按钮。
单选按钮与复选框在外观上也不同:复选框是一个正方形的小框,而单选按钮则是一个小小的圆
在上面的程序中,我们首先定义了一个组:colorSel。接下来的三条语句使用new操作符创建了三个Checkbox,并在参数列表中指定了它所在的组,其语法格式为:
单选按钮名=new Checkbox(“提示文本”,所在组名,初值);
其中初值是布尔型的:true表示选中,false表示未选中。
注重:
一组单选按钮中仅能有一个按钮的初值是true,因为是“单选”嘛。
最后,我们再次调用了panel的add方法,将它们装入容器panel中。
3)
red.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent evt) { if(evt.getStateChange()==ItemEvent.SELECTED) button1.setForeground(Color.red); } });
这段程序用到了许多我们没有碰到过的东西!不过不要紧,做为初学者还是要学会“黑盒子”学习方法,也就是在学习的初级阶段要将某些东西当作一个整体来接受,而不是每一个都要剖析清楚,那样就会影响学习效果的。正如这段程序,大家只要会用,会理解就行了,不一定要搞懂为什么这么写。
第一行中red.addItemListener用来为单选按钮red增加一个监测器。监测什么呢?第3行说明监测itemStateChanged(状态改变时)。第5行说明当监测到状态改变时,就判定改变后的状态是不是“选中”的。假如是,就执行第6行,将按钮button1的前景色设置为红色。
在后面的两段中,我们采用相同的方法为单选按钮green和blue分别创建了一个监测器,使得当其被“选中”时,就将按钮button1的前景色设置为相应的颜色(绿色和蓝色)。
4)
button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { doButton1Action(); } });
这一段程序,我们在9.2小节中就碰到过。它是用来为按钮button1创建一个监测器。不同的是,当时我们是直接说明了当按钮按下时所要执行的语句。而在此,我们则是让其去执行一个doButton1Action方法。这个方法,是在我们后面的程序中定义的。
5)
public void doButton1Action() { if (setbeep.getState()) Toolkit.getDefaultToolkit().beep(); if (setcounter.getState()) button1.setText("press: "+String.valueOf(++counter)); else button1.setText("Press me"); }
这就是当按下按钮button1时,执行的方法doButton1Action。整个方法可以分为两个部分的工作:
其一是:
if (setbeep.getState())
Toolkit.getDefaultToolkit().beep();
即,首先判定复选框setbeep否被选中(使用复选框的getState方法获得其状态,假如被选中,返回true;假如未被选中,返回false)。假如被选中,就响铃。
把整个程序逻辑串起来讲就是:当按钮button1按下时,将检查复选框setbeep是否被选中,假如被先中,就响铃,否则无任何反应。
其二是:
if (setcounter.getState()) button1.setText("press: "+String.valueOf(++counter)); else button1.setText("Press me");
即,首先判定复选框setcounter是否被选中。假如被选中,则改变按钮button1的显示文本,将其改为press:按下总次数;否则,让其显示最初的“Press me”。
自测练习
1) 在Java语言中,复选框类名是____________。
a.Button b.Checkbox c.checkBox d.Label
2) 在Java语言中,单选框类名是____________。
a.Label b.checkBox c.Button d.Checkbox
3) 假设有cb1、cb2、cb3三个对象,属于同一个CheckboxGroup,则它们是________。
a.单选按钮 b.复选框
4) 复选框的外观是________。
a.一个小正方形 b.一个小圆形 c.一个小三角形
5) 单选框的外观是________。
a.一个小正方形 b.一个小圆形 c.一个小三角形
6) 编写一段程序,使其运行结果如下图所示:
并且,当选中了NO.1,则按钮显示为NO.1;选中了NO.2,则按钮显示为NO.2。
练习答案
1)b 复选框类名为Checkbox,第一个字母“C”是大写字母。
2)d 单选按钮也是Checkbox,与复选框的不同是,单选按钮是属于一个CheckboxGroup的。
3)a 加入了同一个CheckboxGroup,就成为一组,一组中仅有一个能够被选中,称为单选按钮。
4)a 请参看图9-6。
5)b 请参看图9-7。
6)以下是一个实现实例:
源程序:lianxi903.java
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class lianxi903 extends JApplet { JButton button1; Checkbox theOne,theTwo; CheckboxGroup cbg1; public void init() { JPanel panel1=(JPanel)getContentPane(); panel1.setLayout(new FlowLayout()); cbg1=new CheckboxGroup(); theOne=new Checkbox("NO.1",cbg1,true); theTwo=new Checkbox("NO.2",cbg1,false); button1=new JButton("Button"); panel1.add(theOne); panel1.add(theTwo); panel1.add(button1); theOne.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent evt) { if(evt.getStateChange()==ItemEvent.SELECTED) button1.setText("NO.1"); } }); theTwo.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent evt) { if(evt.getStateChange()==ItemEvent.SELECTED) button1.setText("NO.2"); } }); } }
发表评论
-
Java List 生成 树(增强版)
2017-03-20 18:29 4560Java List 生成 树:http://ysj51 ... -
在CentOS中安装与配置JDK8
2017-01-14 21:20 941环境准备 系统环境:centos6.5 安装方式:r ... -
Java List 生成 树(转)
2016-03-15 15:47 8737文章出自:http://www.cnblogs.com ... -
使用Cglib的BeanCopier实现Bean的拷贝
2015-12-01 16:49 28907选择Cglib的BeanCopier进行B ... -
解决Java计算浮点数精度问题(BigDecimal)
2015-11-09 17:52 3104工具类如下: package com.yusj.we ... -
JAVA根据IP地址获取详细的地域信息(转)
2015-07-16 14:45 25665文章出自:http://hejianke83.blog ... -
Java获取客户端的真实IP地址(转)
2015-07-15 16:10 3901文章出自:http://newleague.iteye ... -
XML 和 java对象相互转换(转)
2015-07-14 16:43 4010文章出自:http://hbiao68.iteye.c ... -
Java + MongoDB 实现 hello world 例子(译)
2015-04-22 12:18 3957原文出自:http://www.mkyong.com ... -
Java MongoDB 教程(译)
2015-03-16 15:25 1894原文出自:http://www.mkyong.com ... -
过滤有效查询条件的好方法
2014-11-13 17:25 1591在工作中经常遇到明细查询,前段有很多查询条件,但是不 ... -
解决servlet-api包冲突问题(maven)
2014-08-20 10:12 47113问题描述:本人的项目是用Maven管理,而且用到了s ... -
StringUtils中isEmpty 和isBlank的区别(转)
2014-05-27 16:17 11375文章出自:http://www.2cto.com/kf ... -
JDK动态代理实现原理(转)_AOP简介
2014-04-25 16:28 6390文章出自: http://rejoy.it ... -
对只转发结果集的无效操作: isLast
2014-03-13 14:19 2720在遍历结果集的时候,用rs.isLast()来判断是否到达 ... -
利用java导入导出excel到oracle数据库
2013-12-05 14:46 8638用到的JAR包如下(可以直接到POI官网上下载也可以 ... -
循环读取图片入库
2013-11-26 19:50 1593工作总结备份,见代 ... -
linux中查看java进程(转)
2013-11-15 13:29 2002文章出自:http://blog.csdn.net/m ... -
如何在命令行模式下编译运行带包的java文件(转)
2013-03-29 09:10 1845文章出自 : http://blog.sina.com ... -
如何查找Java文件源代码和Jar包
2013-01-07 14:59 1634把已知类名录入到Class的文本框中,点击Search ...
相关推荐
【JAVA-GUI学生管理系统】是一种基于Java图形用户界面(GUI)技术开发的系统,主要用于管理学生信息。在Java编程环境中,GUI(图形用户界面)允许开发者创建交互式的应用程序,使得用户可以通过直观的图形元素如按钮...
AWT 是 Java 早期的图形界面设计,但是它存在两个缺点:一是只提供基本的组件,二是不能跨平台。于是,Sun 公司研发了 Swing 组件,弥补了 AWT 的不足。Swing 组件是轻量级的、可跨平台的,提供了许多新的组件,可以...
Java项目“考试系统Java基础Gui”是一个基于Java和GUI技术构建的应用程序,主要目标是实现一个功能完善的在线考试平台。这个系统充分利用了Java语言的强大功能和GUI库,如Java Swing,来提供用户友好的界面和高效的...
1. **组件与布局管理**:在Java GUI编程中,组件是构成界面的基本单元,如JButton、JLabel、JTextArea等。布局管理器如FlowLayout、BorderLayout、GridLayout和GridBagLayout负责安排这些组件在窗口中的位置和大小。...
总的来说,这个基于JAVA的GUI学生成绩管理系统项目涵盖了JAVA GUI编程、数据库设计与操作、以及两者之间的交互等多个核心知识点,对于JAVA初学者来说,它不仅提供了一个实际操作的平台,还是一份宝贵的学习资料,有...
在这个“java课设GUI界面飞行棋”项目中,开发者利用Java的强大功能,构建了一个交互式的飞行棋游戏,为用户提供了一种视觉化的游戏体验。 GUI(图形用户界面)是用户与计算机系统交互的主要方式,它通过图标、按钮...
本项目中提到的"javaGUI开发的小程序"显然使用了Swing库,因为压缩包文件名中包含“swing”。 Swing是Java Standard Edition (Java SE) 的一部分,它提供了一系列组件(JButton, JTextField, JFrame等)用于构建...
本篇文章将围绕一个具体的示例——绘制一个棋盘并实现按钮与面板的事件监听,来深入探讨相关的Java GUI编程技巧。 #### 二、核心知识点 ##### 1. 导入必要的包 在编写Java GUI程序时,通常需要导入以下几个关键包...
《生命游戏:Java GUI实现与美观界面设计》 生命游戏,又称康威生命游戏,是英国数学家约翰·何顿·康威在1970年提出的一种简单的模拟生命现象的数学模型。在这个游戏中,细胞在二维网格上遵循一套简单的规则进行...
Java GUI(Graphical User Interface)是指图形化用户界面,旨在提高用户与计算机之间的交互性。Java 语言为 GUI 提供了完善的支持,主要通过 java.awt 和 javax.swing 两个包来实现。 一、GUI 基础概念 GUI 是指...
在Java编程领域,构建一个图形用户界面(GUI)的搜索程序是一项常见的任务,它可以实现对本地计算机文件及其内容的高效检索。本项目正是以此为目标,提供了类似Windows操作系统内置搜索功能的功能,但其核心是用Java...
Java GUI超市管理系统是一款基于MySQL数据库和Java编程语言的软件应用,专为课程设计或小型商业环境中的超市管理而开发。这个系统充分利用了Java的图形用户界面(GUI)库,如Swing或JavaFX,来创建直观易用的操作...
Java基于GUI的桌面点餐系统是一个综合性的应用,它整合了客户端和服务端的功能,提供了餐厅运营所需的各项服务。本文将详细解析该系统的关键知识点。 首先,我们关注的是开发语言——Java。Java是一种广泛应用于...
在Java编程环境中,GUI(图形用户界面)是与用户交互的主要方式。为了在GUI中集成网页浏览功能,开发者经常利用特定的库或组件。本文将深入探讨如何在JAVA GUI中嵌入浏览器页面,以实现类似的功能,如在桌面应用中...
在Java编程领域,GUI(图形用户界面)是创建桌面应用程序不可或缺的一部分。本示例程序"Java GUI简单程序"旨在教你如何构建一个基本的GUI界面,同时整合数据库连接、查询功能,并利用JTable来展示查询结果。这是一个...
Java GUI程序设计
在本项目中,我们将探讨如何使用Java图形用户界面(GUI)技术来实现一个用户登录界面。这个任务适合大学二年级的学生作为编程作业,特别是在学习Java基础和GUI编程时。Java GUI允许开发者创建丰富的、交互式的应用...
Chinese Chess game made by Java GUI. Java-GUI制作的象棋游戏 Chinese Chess game made by Java GUI. Java-GUI制作的象棋游戏 Chinese Chess game made by Java GUI. Java-GUI制作的象棋游戏 Chinese Chess game ...
GUI的实验室设备管理系统源码.zip基于java-GUI的实验室设备管理系统源码.zip基于java-GUI的实验室设备管理系统源码.zip基于java-GUI的实验室设备管理系统源码.zip基于java-GUI的实验室设备管理系统源码.zip基于java-...
②Mysql数据库与java连接、题目的随机生成、界面切换、循环依赖都是如何设计和实现的。 阅读建议:此资源以开发随机出题系统学习其java GUI原理和内核,不仅是代码编写实现,也更注重内容上的需求分析和过程理解,...