本文目录一览:
- 1、java的Swing是轻量级组件,轻量级组件是什么意思?
- 2、java中的swing用法
- 3、JAVA初学者:swing是什么
- 4、java里面的swing组件是什么东西?
- 5、java中swing 全称
java的Swing是轻量级组件,轻量级组件是什么意思?
一、轻量级组件是用java代码画出来的,这样具有平台移植性
重量级组件是调用系统的函数画出来的组件,比如主窗体
一般来说尽量用轻量级的组件,这样对程序的移植性很好。
一般java.swing包里的组件大部分是轻量级的,java.awt里面的是重量级的。
swing是由100%纯java实现的,swing组件是用java实现的轻量级组件,没有本地代码
不依赖操作系统的支持,这是与AWT组件的最大组别。由于AWT组件通过与具体平台的
对等类(peer)实现,因此Swing比AWT组件具有更强的实用性。Swing在不同的
平台上表现一致,并且有能力提供本地窗口系统不支持的其它特性。
二、总的来说就是
重量级组件:对应运行平台必须存在一个对应的组件.
轻量级组件:在一个虚拟的画布上画出来的组件(所以swing较慢),所有轻量级组件"最终"要放到重量级组件(jframe,jdialog)中.由于是画出来所以能做到各种平台上一致的表现.同样,如果混合重量级组件和轻量级组件容易引起重叠上的冲突.
java中的swing用法
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class TestRegister extends JDialog {
// setup the variable
String name="";
String password="";
JLabel nameL,passwordL;
JTextField nameArea;
JPasswordField passwordArea;
JButton register,login,cancel;
ArrayList User userData = new ArrayList User();
public static void main(String[] args) {
TestRegister test = new TestRegister();
test.setupLayout();
}
public void setupLayout(){
this.setBounds(300, 200,280,120);
this.setTitle("Register");
this.setResizable(false);
this.setModal(true);
setupTypeArea();
this.getData();
this.setVisible(true);
}
public void setupTypeArea(){
JPanel typeArea = new JPanel();
typeArea.setLayout(new FlowLayout());
nameL = new JLabel("name: ");
passwordL = new JLabel("password: ");
nameArea = new JTextField(15);
passwordArea = new JPasswordField(15);
typeArea.add(nameL);
typeArea.add(nameArea);
typeArea.add(passwordL);
typeArea.add(passwordArea);
this.add(typeArea);
JPanel buttonArea = new JPanel();
register = this.addButton("Register", buttonArea);
login = this.addButton("Login", buttonArea);
cancel = this.addButton("Cancel", buttonArea);
this.add(buttonArea,BorderLayout.SOUTH);
}
public JButton addButton(String name,JPanel panel){
JButton temp = new JButton(name);
temp.addActionListener(new ButtonMonitor());
panel.add(temp);
return temp;
}
public void showMessage(String m){
JOptionPane.showMessageDialog(this, m);
}
public void getData(){
try {
Scanner input = new Scanner(new FileReader("D:/data.txt"));
while(input.hasNextLine()){
this.addUser(input.nextLine());
}
} catch (FileNotFoundException e) {
return;
}
}
public void addUser(String data){
String [] s = data.split(" ");
String name = s[0];
String password = s[1];
userData.add(new User(name,password));
}
public void updateData(){
try {
FileWriter saver = new FileWriter("D:/data.txt");
String data = "";
for(int i=0; iuserData.size();i++){
data += userData.get(i).toString()+"\n";
}
saver.write(data);
saver.close();
} catch (IOException e) {
return;
}
}
public void doRegister(){
String name = nameArea.getText();
String password = passwordArea.getText();
if(!name.isEmpty()!password.isEmpty()){
for(int i=0;iuserData.size();i++){
if(name.equals(userData.get(i).getName())){
String m = "这个用户名已经注册!!";
this.showMessage(m);
doCancel();
return;
}
}
userData.add(new User(name,password));
updateData();
doCancel();
}
else{
String m="用户名或者密码是空!!!";
this.showMessage(m);
doCancel();
}
}
public void doLogin(){
String name = nameArea.getText();
String password = passwordArea.getText();
for(int i=0;iuserData.size();i++){
if(name.equals(userData.get(i).getName())password.equals(userData.get(i).getPassword())){
String m = "登陆成功";
this.showMessage(m);
this.doCancel();
return;
}
}
String m ="用户名和密码不匹配!!";
this.showMessage(m);
this.doCancel();
}
public void doCancel(){
nameArea.setText("");
passwordArea.setText("");
}
class ButtonMonitor implements ActionListener{
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals("Register")){
doRegister();
}else if(e.getActionCommand().equals("Login")){
doLogin();
}else if(e.getActionCommand().equals("Cancel")){
doCancel();
}
}
}
class User{
String name;
String password;
public User(String name, String password) {
this.name = name;
this.password = password;
}
public String getName() {
return name;
}
public String getPassword() {
return password;
}
public String toString(){
return name+" "+password;
}
}
}
给你随便写了一下。。。简单登陆用的话用JDialog就够了不必要用JFrame
其实最好是用数据库
JAVA初学者:swing是什么
看看这个就知道了
Java应用程序用户界面开发包
Swing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。
工具包中所有的包都是以swing作为名称,例如javax.swing,javax.swing.event
用Swing创建图形界面步骤:
(1)导入Swing包
(2)选择界面风格
(3)设置顶层容器
(4)设置按钮和标签
(5)将组件放到容器上
(6)为组件增加边框
(7)处理事件
(8)辅助技术支持
1。导入Swing包
下面语句导入Swing包
import javax.swing.*;
大部分Swing程序用到了AWT的基础底层结构和事件模型,因此需要导入两个包:
import java.awt.*;
import java.awt.event.*;
如果图形界面中包括了事件处理,那么还需要导入事件处理包:
import javax.swing.event.*;
2.选择界面风格
Swing允许选择程序的图形界面风格常用的有java风格,windows风格等
下面的代码用于选择图形界面风格,这里选择的是跨平台的Java界面风格。
try { UIManager.setLookAndFeel(
UIManager.getCrossPlatformLookAndFeelClassName( )); }
catch (Exception e) { }
(3) 设置顶层容器
图形界面至少要有一个顶级Swing容器
顶级Swing容器为其它Swing组件在屏幕上的绘制和处理事件提供支持
常用的顶级容器:
JFrame(框架):表示主程序窗口
JDialog(对话框):每个JDialog对象表示一个对话框,对话框属于二级窗口
JApplet(小程序):在浏览器内显示一个小程序界面
一个框架包括边界、菜单栏、工具栏、状态栏,以及中间占主要部分的窗格
窗格也可以看作是一种面板,但它是框架的一个组成部分
组件不会直接放到框架上,而是放在若干个面板上,这些面板再放到窗格上
用框架对象的getContentPane()函数来获得窗格,再调用窗格的add()函数放置面板
public static void main(String[ ]args){JFrame frame=new JFrame("SwingApplication");
JPanel panel1=new JPanel();
frame.getContentPane().add(panel1,BorderLayout.CENTER);
......//添加其他组件
frame.pack();frame.setVisible(true);}
java里面的swing组件是什么东西?
是一种b/s结构的,做的是桌面程序的,但是Java的swing不是很好,Java强打的是网页,所以一般很少用到swing
java中swing 全称
swing就是全称
awt是abstract window toolkit的简写,但是swing没有
swing的意思是:
1 摇摆; 摆动
2 摆动的幅度; 摆动的范围
The pendulum's swing is 12 inches. 钟摆的摆动幅度是十二寸
3 手臂挥动产生的打击
4 挥动 (球棒, 高尔夫球棒等物) 的姿势
5 (态度, 地位, 状况的) 改变
a swing to conservation 转趋保守
6 自由的行为
The children have free swing in deciding what color to paint their room.孩子可自行决定房间油漆的颜色
7 a. 优雅的移动
has a swing to her walk 走路摇曳生姿
b. 前后摆动
the swing of a bird across the sky 鸟在空中的飞行
8 (可以回到原点的) 路线, 行程
a swing across the state while campaigning 竞选时在州内的循环活动
9 秋千
10 正常步调
back in the swing 回归正常
11 (诗的) 音律
12 股市行情的起伏
13 『音乐』
a. 摇摆乐
1935 年以爵士为基础发展而成的流行舞曲, 旋律较简单
b. 放摇摆乐舞曲的舞厅
c. 轻妙的节奏
看来swing有很多有意思的地方,或许开发者开发swing组件的时候就看上了哪条吧~