您的位置:

swingjava,swingjava食物动态代码

本文目录一览:

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组件的时候就看上了哪条吧~

swingjava,swingjava食物动态代码

2022-11-30
java吃食物增加步数(蚂蚁吃食物java)

2022-11-12
贪食蛇js代码(贪吃蛇的编程代码)

本文目录一览: 1、js中当贪吃蛇达到一定长度加速的代码怎么写 2、各位大侠,本人新手跪拜写贪吃蛇的代码,只需提供具体步骤 编译环境 涉及的函数 无需具体代码!不胜感激呀 3、高手帮忙解释一下JAVA

2023-12-08
动物园java代码(动物园网页设计代码)

2022-11-11
java图片识别动物,图片 识别 动物

2022-11-17
重学java笔记,java笔记总结

2022-11-23
java贪吃蛇代码,java贪吃蛇代码具有登入功能

2023-01-10
贪吃蛇java代码,贪吃蛇java代码eclipse

2022-11-27
java多态之方法调用(JAVA用何种方式实现多态)

2022-11-13
贪吃蛇java代码(贪吃蛇java代码怎样使速度加快)

2022-11-14
印象笔记记录java学习(Java成长笔记)

2022-11-12
学生html美食静态网页代码评析

2023-05-23
发篇java复习笔记(java课程笔记)

2022-11-09
java笔记,大学java笔记

2022-11-28
java笔记,尚硅谷java笔记

2022-12-01
htmljs编程笔记(html代码笔记)

本文目录一览: 1、html代码和JS代码有什么区别 2、如何在html中调用js函数 3、JavaScript学习笔记之数组基本操作示例 4、HTML5初学者笔记 5、《web前端笔记7》js字符—

2023-12-08
java学习笔记(java初学笔记)

2022-11-14
校园失物招领源码php,校园失物招领平台类图

2022-11-26
关于java性能的小笔记(java代码性能分析)

2022-11-12
java客户端学习笔记(java开发笔记)

2022-11-14