GUI

来源:互联网 发布:单机游戏毛毛mac下载 编辑:程序博客网 时间:2024/05/16 17:58

 

 

 

awt和Swing等应用于桌面级的应用,Java在这方面是弱项。

桌面级应用如word office等。

Java的强项应该在web上面,在服务器,在jee上面。

1、在这里要建立程序的概念。建立一个完整的小系统的概念。

2、在这里要学习整个表现层的做法。影响也是极其深远,学的通用的做法,从此过后所有的表现层都这么去做,从此以后就不应再去学,从设计的角度去学。包括学web,框架等以后就不用学了,从表现层,一个设计的角度去学,做其他的都可以用到这里学的东西;

3、要学会视界机制,影响也是极其深远,也是体现基本的思想,这个只有这里才会学,其他都学不到。

4、awt的学习的一个方法;

以上的所有东西只有这里总结了,别的地方都没有,网上也找不到;

做手机里涉及的Java知识并不多,主要就是awt和多线程;

 

从设计的角度上来,组件就是能完成一定功能的封装体;

是一个可以独立存在的个体,不会依赖别人,是可以独立存在而完成其一定的功能。

设计中常听到,系统——子系统——模块——组件;大到整个系统都叫组件;从设计的角度上来讲,所有统统都叫组件,他们四个的概念是一样,是一个东西。

最小的组件可以小到一个类。

 

awt似乎是有可移植性,但是实际上它画图是依赖于底层的系统的,他是依赖windows的画图的来画的,不同的系统,会有不同。不同的机器上还是有一定的不同的。

 

组件放在panel里面,panel放在frame里,frame显示出来;

有些组件是可以直接放在frame里面

一般地,把panel当成一个组织界面的最小单元;当然也还是可以在panel里放一些小的panel的。

 

几个知识点:

组件——菜单——控制外观(字体颜色,布局管理器)

mune其实也相当于一个panel一样,可以进行类比;

 

画界面的地方就是画组件的过程。

 

 

下面是代码总结:

 

 

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

 

import javax.swing.*;

 

public class AddPanel extends JPanel{

         //1:定义本panel需要显示的组件,示例如下:

         privateJButton btn_add = null;

        

         //2:初始化本panel,实际上就是画出本界面

         privatevoid init(){

                   //界面的复杂程度取决于组件的多少和组件的复杂程度

                   //画界面的过程就是先画出每一个组件,再把组件组合起来形成界面的过程

                  

                   //每一个组件的写法大致的步骤如下:

                   //1:初始化组件

                   btn_add= new JButton("test");

                   //2:设置组件的属性,多半都是设置外观的属性,例如:字体、颜色、大小、位置等

                  

                   //需要写代码来给组件设置值,其实就是展示数据

                   //1:调用逻辑层接口,获取需要展示的数据

                   //2:转换数据

                   //3:把数据设置到组件上进行展示            

                  

                   //需要设置事件

                   this.btn_add.addActionListener(

                            newActionListener(){

                                     @Override

                                     publicvoid actionPerformed(ActionEvent arg0) {

                                               add();                                            

                                     }                                   

                            }

                   );      

                  

                  

                   this.btn_add.setLocation(100,100);

                   //3:组件加到panel里面,panel放到frame里面,frame就显示出来

         }

         //3:本Panel里面处理事件的方法

         publicvoid add(){

                   //事件处理

                   //1:收集参数

                   //2:组织参数(一般需要进行数据校验)

                   //3:调用逻辑层接口,获取返回值

                   //4:根据返回值,选择下一个界面

         }

}

 

0 0
原创粉丝点击