「java-gui」javaguide官网进入

博主:adminadmin 2022-11-30 22:36:07 77

今天给各位分享java-gui的知识,其中也会对javaguide官网进入进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java的GUI和MVC有什么区别?

两者的主要区别是编程语言的不同。

最典型的JAVA MVC就是JSP + servlet + javabean的模式。比较好的MVC,老牌的有Struts、Webwork。新兴的MVC 框架有Spring MVC、Tapestry、JSF等。

在ASP .NET MVC框架中没有了自己的控件,页面显示完全就回到了写html代码的年代。

MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:

Model(模型)表示应用程序核心(比如数据库记录列表)。

View(视图)显示数据(数据库记录)。

Controller(控制器)处理输入(写入数据库记录)。

MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。

Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。

通常模型对象负责在数据库中存取数据。

View(视图)是应用程序中处理数据显示的部分。

通常视图是依据模型数据创建的。

Controller(控制器)是应用程序中处理用户交互的部分。

通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。

MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

java 中的 GUI 应该读什么

GUI 是 Graphical User Interface 的简称,即图形用户界面,通常人机交互图形化用户界面设计经常读做“goo-ee”.

java中的GUI是什么

GUI 是图形用户界面

JAVA中的编写图形界面的是

java.awt和javax.swing两个包

JAVA有很多GUI产品,eclipse就是

java中GUI是什么意思啊解释一下

常常用Controler来表示,一个类.

一般初学的时候,都是在一个监听接口的方法实现中对某另一个类进行操作.

比如一点地址栏的回车,下面的状态栏会显示IP地址等.

按照面向对象的发消息机制,有控制模块的程序不再是直接对其他类进行操作,而是在触发事件的时候向控制模块发消息,由控制模块启动相应类的进程,向其发消息,以改变其状态.这样一来各个组件之间不必互相认识,只要通过控制中心联系就可以了.

例如上面那个例子,点完回车后,地址栏的向控制器发一个消息,控制器启动响应的状态栏对象的进程,再向其发送一个消息,使其调用自身的改变状态方法.

java有什么好的gui框架知乎

 1:java GUI框架类型

一种是比较老的AWT框架,一种是新的Swing框架。awt(Abstract window toolkit)的消息机制是基于分层处理的,事件沿着层次结构沿着容器的上方传递。自从java1.1开始,java开始采用新的事件处理模型,采用委托事件模型。

2:委托事件处理

事件源与事件处理程序分开,其实就是建立一种事件源,监听器的模式,事件源就是产生消息的源头,指的是Button,Checkbox ,CheckboxGroup,Choice,List,TextArea,TextField,Menu等各种各样的空间。

监听器就是各种各样的接口,程序要处理相应的时间就必须实现这些接口。

事件处理的逻辑步骤,(1)事件源添加监听器(2)实现监听器的接口。

3:事件类型,监听器相关接口

事件 监听器

ActionEvent ActionListener

AdjustmentEvent AdjustmentListener

ComponentEvent ComponentListener

Containe rEvent ContainerListener

FocusEvent FocusListener

KeyEvent KeyListener

MouseEvent MouseListener

WindowEvent WindowListener

ItemEvent ItemListener

TextEvent TextListener

事件添加以及删除函数,形式都如下所示:

addActionListener( ) //添加监听器

removeActionListener( ) //删除监听器

每个事件监听器都有一个或者几个接口,当implements interface时必须实现所有的的监听器的接口函数,即便函数什么也不做,为了减少这种写空函数的麻烦,java为监听器中函数多于一个提供了一个适配器,适配器里面有默认的函数,需要的时候仅仅重写需要重写的函数即可,如下所示:

class MyWindowListener extends WindowAdapter {

public void windowClosing(WindowEvent e) {

System.exit(0);

}

}

4:applet

applet是可以在HTML网页中运行的程序,它在运行的时候会有安全限制,它可以不需要main函数,一个典型的applet程序如下所示:

import java.awt.*;

import java.applet.*;

public class Applet1 extends Applet {

public void paint(Graphics g) {

g.drawString("First applet", 10, 10);

}

}

所有public类必须继承Applet类,Applet中主要的方法有 init(),start(),paint(),stop(),destroy(),

init 在程序片被创建时候调用;start在程序片进入web浏览器后调用,是在Init之后;stop是在程序片离开浏览器中的视野时关闭响应操作;destroy是在程序片不再被需要时销毁程序片。

5:常用组件类型

(1)Button 按键

public Button();public Button(String label);

(2)TextFiled 输入框

TextField();TextField(int columns);TextField(String text);TextField(String text, int columns)

(3)TextArea 文本输入区域

TextArea();TextArea(int rows,int columns);TextArea(String text);

TextArea(String text,int rows,int columns);TextArea(String text,int rows,int columns,int scrollbars);

(4)Lable 标签

Label();Label(String text);Label(String text,int alignment)

(5)Checkbox 复选框

Checkbox();Checkbox(String label);Checkbox(String label, boolean state);

Checkbox(String label, boolean state, CheckboxGroup group);

Checkbox(String label, CheckboxGroup group, boolean state);

(6)CheckboxGroup 单选按钮

CheckboxGroup()

它把Checkbox 放在一起,如下所示:

CheckboxGroup cbg = new CheckboxGroup();

add(new Checkbox("one", cbg, true));

add(new Checkbox("two", cbg, false));

add(new Checkbox("three", cbg, false));

(7)Choice 下拉列表

Choice();

点击会会出现一个下拉列表,可以向其中添加Item,如下程序所示:

Choice ColorChooser = new Choice();

ColorChooser.add("Green");

ColorChooser.add("Red");

ColorChooser.add("Blue");

JAVA语言的GUI实例

GUI做的计算器,可以查考一下,组件、事件等

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class Calculator extends JFrame{

private Container container;//框架

private JTextField tf;//定义文本框

private Panel panel;

private String cmd;

private double result;//运算结果

private boolean start;//运算开始判断

Calculator(){

super("计算器");

container = getContentPane();

container.setLayout(new BorderLayout());

//添加文本框

tf = new JTextField("0.0");

container.add(tf,BorderLayout.NORTH);

tf.setHorizontalAlignment(JTextField.RIGHT);

tf.setEditable(false);

//嵌套容器

panel = new Panel();

container.add(panel);

start = true;

result = 0;

//最后运算等号

cmd = "=";

ActionListener insert = new InsertAction();

ActionListener command = new CommandAction();

//调用创建Button方法

addButton("1",insert);

addButton("2",insert);

addButton("3",insert);

addButton("0",insert);

addButton("*",command);

addButton("Back",insert);

addButton("4",insert);

addButton("5",insert);

addButton("6",insert);

addButton("+",command);

addButton("/",command);

addButton("Clear",insert);

addButton("7",insert);

addButton("8",insert);

addButton("9",insert);

addButton("-",command);

addButton(".",insert);

addButton("=",command);

setSize(400,200);

}

private void addButton(String str,ActionListener listener){

//添加Button方法(操作类型、注册监听器)

JButton button=new JButton(str);

button.addActionListener(listener);

panel.setLayout(new GridLayout(3,6));

panel.add(button);

}

private class InsertAction implements ActionListener{

//插入,insert

public void actionPerformed(ActionEvent event){

String input=event.getActionCommand();

if (start)

{

tf.setText("");

start=false;

}

if(input.equals("Back"))

{

String str=tf.getText();

if(str.length()0)

tf.setText(str.substring(0,str.length()-1));

}

else if(input.equals("Clear"))

{

tf.setText("0");

start=true;

}

else

tf.setText(tf.getText()+input);

}

}

private class CommandAction implements ActionListener{

//计算,command

public void actionPerformed(ActionEvent e){

String command=e.getActionCommand();

if(start)

{

cmd=command;

}

else

{

calculate(Double.parseDouble(tf.getText()));

cmd=command;

start=true;

}

}

}

public void calculate(double x){

//加减乘除运算

if (cmd.equals("+")) result+=x;

else if (cmd.equals("-")) result-=x;

else if (cmd.equals("*")) result*=x;

else if (cmd.equals("/")) result/=x;

else if (cmd.equals("=")) result= x;

tf.setText(""+ result);

}

public static void main(String []args){

Calculator mycalculator=new Calculator();

mycalculator.setLocation(300,300);

mycalculator.setVisible(true);

}

}

java-gui的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于javaguide官网进入、java-gui的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-30,除非注明,否则均为首码项目网原创文章,转载请注明出处。