Java编程使用箱式布局管理器示例【基于swing组件】

 更新时间:2018年01月24日 14:31:01   作者:fearlessMore  
这篇文章主要介绍了Java编程使用箱式布局管理器,结合实例形式分析了基于swing组件的箱式布局管理器定义与使用技巧,需要的朋友可以参考下

本文实例讲述了Java编程使用箱式布局管理器。分享给大家供大家参考,具体如下:

先来看看运行效果:

完整代码如下:

package awtDemo;
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.Box;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
/**
 * 使用箱式布局管理器
 * 
 * @author HAN
 *
 */
public class BoxLayout_1 extends JFrame {
    /**
   *
   */
    private static final long serialVersionUID = 6896925750596855002L;
    public BoxLayout_1() {
        // TODO Auto-generated constructor stub
        Container container = getContentPane();
        Box box = Box.createVerticalBox();
        container.add(box, BorderLayout.NORTH);
        box.add(Box.createVerticalStrut(5));
        Box topicBox = Box.createHorizontalBox();
        box.add(topicBox);
        topicBox.setAlignmentX(1);
        topicBox.add(Box.createHorizontalStrut(5));
        JLabel topicLabel = new JLabel("主题:");
        topicBox.add(topicLabel);
        topicBox.add(Box.createHorizontalStrut(5));
        JTextField topicTextField = new JTextField(30);
        topicBox.add(topicTextField);
        Box box2 = Box.createVerticalBox();
        container.add(box2, BorderLayout.CENTER);
        Box contentBox = Box.createHorizontalBox();
        contentBox.setAlignmentX(1);
        box2.add(Box.createVerticalStrut(5));
        box2.add(contentBox);
        contentBox.add(Box.createHorizontalStrut(5));
        JLabel contentLabel = new JLabel("内容:");
        contentLabel.setAlignmentY(0);
        contentBox.add(contentLabel);
        contentBox.add(Box.createHorizontalStrut(5));
        StringBuilder stringBuilder = new StringBuilder();
        String contentString = new String("利用箱式布局管理器实现组件的右对齐"
                + "和上对齐,以及控制组件之间的间距!");
        stringBuilder.append(contentString);
        stringBuilder.append("\n");
        stringBuilder.append(contentString);
        contentString = stringBuilder.toString();
        JTextArea contentTextArea = new JTextArea(contentString, 3, 30);
        contentTextArea.setLineWrap(true);
        JScrollPane scrollPane = new JScrollPane();
        scrollPane.setAlignmentY(0);
        scrollPane.setViewportView(contentTextArea);
        contentBox.add(scrollPane);
        contentBox.add(Box.createHorizontalStrut(5));
        // System.out.println(contentTextArea.requestFocusInWindow());
        box2.add(Box.createVerticalStrut(5));
        JButton submitButton = new JButton("确定");
        box2.add(submitButton);
        submitButton.setAlignmentX(1);
        box2.add(Box.createVerticalStrut(5));
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        BoxLayout_1 frame = new BoxLayout_1();
        frame.setTitle("www.jb51.net - 使用箱式布局管理器");
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.pack();
    }
}

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

相关文章

  • 如何用匿名内部类实现 Java 同步回调

    如何用匿名内部类实现 Java 同步回调

    这篇文章主要介绍了如何用匿名内部类实现 Java 同步回调,帮助大家更好的理解和学习Java,感兴趣的朋友可以了解下
    2020-10-10
  • Java利用happen-before规则如何实现共享变量的同步操作详解

    Java利用happen-before规则如何实现共享变量的同步操作详解

    这篇文章主要给大家介绍了关于Java利用happen-before规则实现共享变量的同步操作的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-06-06
  • SpringBoot + Spring Security 基本使用及个性化登录配置详解

    SpringBoot + Spring Security 基本使用及个性化登录配置详解

    这篇文章主要介绍了SpringBoot + Spring Security 基本使用及个性化登录配置详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Springboot中使用缓存的示例代码

    Springboot中使用缓存的示例代码

    这篇文章主要介绍了Springboot中使用缓存的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • Java concurrency集合之CopyOnWriteArraySet_动力节点Java学院整理

    Java concurrency集合之CopyOnWriteArraySet_动力节点Java学院整理

    CopyOnWriteArraySet基于CopyOnWriteArrayList实现,其唯一的不同是在add时调用的是CopyOnWriteArrayList的addIfAbsent(若没有则增加)方法
    2017-06-06
  • 一文详解Spring 中的顺序问题

    一文详解Spring 中的顺序问题

    本文主要介绍了Spring 中的顺序问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • 深入理解可视化JVM 故障处理工具

    深入理解可视化JVM 故障处理工具

    这篇文章主要介绍了深入理解可视化JVM 故障处理工具,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • springboot集成Swagger的方法(让你拥有属于自己的api管理器)

    springboot集成Swagger的方法(让你拥有属于自己的api管理器)

    在大型的项目中,如果你有非常多的接口需要统一管理,或者需要进行接口测试,那么我们通常会在繁杂地api中找到需要进行测试或者管理的接口,接下来通过本文给大家介绍springboot集成Swagger的方法让你拥有属于自己的api管理器,感兴趣的朋友一起看看吧
    2021-11-11
  • Java中关于isEmpty方法、null以及““的区别

    Java中关于isEmpty方法、null以及““的区别

    这篇文章主要介绍了Java中关于isEmpty方法、null以及““的区别,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Spring容器注入bean的五种方法逐个解析

    Spring容器注入bean的五种方法逐个解析

    依赖注入(Dependency Injection)和控制反转(Inversion of Control)是同一个概念。具体含义是:当某个角色(可能是一个Java实例,调用者)需要另一个角色(另一个Java实例,被调用者)的协助时,在传统的程序设计过程中,通常由调用者来创建被调用者的实例
    2023-02-02

最新评论