`
wwty
  • 浏览: 543163 次
  • 性别: Icon_minigender_1
  • 来自: 北京-郑州
社区版块
存档分类
最新评论

对一个登陆界面的jui程序的分析

 
阅读更多

main方法当中: Basic1 basic = new Basic1(shell);

 

    public Basic1(Composite parent)
    {
        this(parent, SWT.NONE);  // must always supply parent
    }
    /**
     * Constructor.
     */
    public Basic1(Composite parent, int style)
    {
        //在 SWT 中,所有控件(除了一些高级控件,比如 shell,将在后面进行讨论)在创建的时候都必须有一个父控件(一个复合实例)。
       //调用超类构造方法创建顶级控件
       // create the button area---Instances of this class are controls which are capable of containing other controls.
       //Composite类的实例是一个控制器,用于装在其他的控制器
       super(parent, style);   // must always supply parent and style
       createGui();
    }

 

下面开始 createGui()方法:

1、首先设定布局:setLayout(new GridLayout(1, true));
* GridLayout 提供了一个功能更强大的布局方法,该方法类似于使用 HTML 表的方法。
* 它创建了 2-D 网格的单元格。可以将控件放置在一个或多个单元格中(可以称之为单元格跨越)。
* 单元格的大小可以是相等的,或者是网格宽度或高度的某个给定可变百分比。
* 可以将控件添加到某一行的下一个可用列中,如果这一行中没有更多的列,那么该控件将移动到下一行的第一 列中。

 

2、// create the input area
//设置分组,并为当前组设置带有标题的明显边界
Group entryGroup = new Group(this, SWT.NONE);

entryGroup.setText("Input Values");//设置标题

 

下面为当前组设置布局:

// use 2 columns, not same width
GridLayout entryLayout = new GridLayout(2, false);

entryGroup.setLayout(entryLayout);//为当前组指定布局管理

//GridData -----指定每个控件如何使用其单元格中的剩余空间
entryGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

开始按钮设置:

Composite buttons = new Composite(this, SWT.NONE);

buttons.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

设置按钮布局:

// make all buttons the same size  ----以行或列的形式安排控件
FillLayout buttonLayout = new FillLayout();

buttonLayout.marginHeight = 2;
buttonLayout.marginWidth = 2;
buttonLayout.spacing = 5;
buttons.setLayout(buttonLayout);

 

为按钮添加事件:使用到了内部类

        // OK button prints input values
        Button okButton = createButton(buttons, "&Ok", "Process input",
                                       new MySelectionAdapter(){
                                           public void widgetSelected(SelectionEvent e)
                                           {
                                               System.out.println("Name:         " + nameField.getText());
                                               System.out.println("Address:      " + addrField.getText());
                                               System.out.println("Phone number: " + phoneField.getText());
                                           }
                                       });

        // Clear button resets input values
        Button clearButton = createButton(buttons, "&Clear", "clear inputs",
                                          new MySelectionAdapter() {
                                              public void widgetSelected(SelectionEvent e)
                                              {
                                                  clearFields();
                                                  nameField.forceFocus();
                                              }
                                          });
       }

这个类当中,有两个地方在技术方面是用的比较不错的,首先是构造方法的地方

    public Basic1(Composite parent)
    {
        this(parent, SWT.NONE);  // must always supply parent
    }

    public Basic1(Composite parent, int style)
    {
        super(parent, style);   // must always supply parent and style
        createGui();
    }

针对上面代码的学习,我的理解是在创建界面的时候,都会牵扯到布局,先布局,然后将布局应用到特定的创建出来的控件上。其次,所有的控件都是创建在父控件的基础之上的,shell等高级控件例外。

 

另外就是内部类的使用地方,可以参考学习一下。好像还有适配器模式。再去看看

分享到:
评论

相关推荐

    java JUI 界面程序 计算器

    本项目是一个基于Java JUI的小型计算器程序,旨在帮助学习者理解如何在Java中构建可视化应用。 在Java中,JUI主要由AWT(Abstract Window Toolkit)和Swing两个库组成。AWT是Java的早期GUI库,提供了一些基本组件,...

    简单的javaJUI界面的网络编程

    在这个场景中,我们使用了Socket编程来创建一个简单的服务器,它能够接收多个客户端的连接,并且每个客户端都可以通过JUI界面进行交互。这种设计模式常见于多人聊天室应用或者在线协作工具。 首先,我们要理解Java ...

    jd-jui(将jar程序换为java程序).rar

    此时,jd-jui就成为了一个非常实用的工具,它可以帮助我们将jar程序转换为可读的Java程序,让我们深入理解代码的工作原理。 jd-jui,全称为Java Decompiler User Interface,是一款强大的Java反编译器的图形用户...

    JUI界面功能模块

    TopJUI通过对EasyUI功能组件的深度封装及扩展开发,可以使用纯HTML调用功能组件,致力于打造不用写JS代码的EasyUI,既有EasyUI的强大功能,又有TopJUI定制的美观界面。

    JD-JUI(JAVA反编译MAC版)

    1. **实时查看**: JD-JUI 提供了一个直观的用户界面,可以直接打开并查看Java字节码,无需进行额外的命令行操作。 2. **源代码展示**: 它能将字节码反编译成易于理解的Java源代码,便于阅读和分析。 3. **类和方法...

    jd-jui jar包代码查看

    JD-GUI是一个独立的图形用户界面工具,它能够帮助开发者快速地浏览和分析Java字节码,从而查看到类和方法的源代码。 首先,我们需要理解什么是.jar文件。.jar是Java平台上的归档文件格式,它用于集合多个Java类文件...

    java反编译工具JD-JUI

    Java反编译工具JD-JUI是一款专为Java开发者设计的工具,它允许用户查看和理解Java字节码,将已编译的.class文件转换回可读的.java源代码。这款工具支持Mac和Windows操作系统,因此无论是苹果用户还是Windows用户都能...

    easyui和dwz_jui两套后台管理界面模板

    EasyUI和DWZ_JUI是两种广泛用于构建后台管理界面的JavaScript框架,它们都是基于jQuery库的,旨在简化Web应用程序的开发过程,提供美观且功能丰富的用户界面。 **EasyUI** EasyUI是一套轻量级的前端开发框架,它...

    java反编译jd-jui安装包文件

    总结来说,JD-JUI作为一款Java反编译工具,提供了一个便捷的平台来查看和理解Java字节码,它简化了开发者对已编译代码的探索过程,是Java开发和调试过程中不可或缺的辅助工具。了解和掌握如何使用JD-JUI,有助于提升...

    Java反编译工具jui

    JD-GUI是一个图形用户界面的Java反编译器,它允许开发者直接打开和查看.class或.jar文件的源代码。"jd-gui.cfg"可能是一个配置文件,用于设置JD-GUI的默认行为和选项,而"jd-gui.exe"则是JD-GUI的可执行文件,适用于...

    image.zip_jui颜色程序_彩色图像_转换成灰度

    JUI(Java Swing用户界面)颜色程序提供了一个这样的功能,允许我们将彩色图像转化为灰度图像,便于分析或简化视觉效果。 RGB色彩模型是基于三种基本颜色——红色、绿色和蓝色的组合,通过不同比例的混合可以创建出...

    jd-jui linux下查看反编译工具

    首先,jd-jui这个名字由"Java Decompiler User Interface"缩写而来,它是一个图形用户界面工具,用于展示Java字节码的反编译结果。在给定的文件"jd-gui-0.2.5.linux.i686"中,我们看到的是jd-gui的一个特定版本,...

    Android反编译工具jd-jui

    `jd-jui`全称为Java Decompiler User Interface,它是由Jadecy项目提供的一个图形用户界面工具,能够帮助开发者查看和理解已编译的Java字节码。在Android应用中,`.dex`文件包含了应用的类和方法,是运行时Dalvik...

    B-JUI 整合MVC3

    B-JUI 是一个优秀的前端框架,它提供了丰富的组件和精美的界面设计,适合用于开发Web应用程序。而Asp.Net MVC3 是微软的一个强大的Web开发框架,它结合了模型-视图-控制器(MVC)模式,提供了灵活的开发结构和强大的...

    dwz_jui 1.6.1版本

    首先,`dwz_jui`的核心是jQuery,一个广泛使用的JavaScript库,它简化了HTML文档遍历、事件处理、动画和Ajax交互。jQuery UI则进一步扩展了这些功能,提供了诸如拖放、日期选择器、对话框等交互组件。结合Bootstrap...

    jui 富文本框架使用

    它集成在DWZ(Dynamic Web Zone)框架之中,旨在提供一个轻量级且功能强大的解决方案,帮助开发者快速实现网页内容的编辑和展示。本文将深入探讨JUI富文本框架的使用方法和核心特性。 DWZ RIA(Rich Internet ...

    jd-jui.exe java反编译工具

    "jd-jui.exe" 是一个专门用于Java反编译的工具,它提供了一个图形用户界面(GUI),使得用户可以方便地查看和理解编译后的Java类文件。 Java反编译工具有多种,例如JD-GUI和JD-Core,它们的工作原理是解析.class...

    DWZ-JUI 文档和代码

    **DWZ-JUI** 是一个基于 jQuery 的前端框架,专为构建高效、易用的 Web 应用程序而设计。这个框架集成了丰富的组件和页面布局,提供了完整的前端解决方案,帮助开发者快速搭建企业级的 Web 管理系统。在“DWZ-JUI ...

    最简单的javaJUI界面的网络编程实例

    最简单的javaJUI界面的网络编程实例

    thinkphp3.23+B-JUI开发的CRM.rar

    本篇将详细介绍一个基于ThinkPHP3.23框架与B-JUI前端库开发的CRM系统的实现细节。 一、ThinkPHP3.23框架 ThinkPHP3.23是ThinkPHP框架的一个稳定版本,它是一款基于MVC(Model-View-Controller)模式的轻量级PHP...

Global site tag (gtag.js) - Google Analytics