常用的面板

来源:互联网 发布:网络暴力公益广告 编辑:程序博客网 时间:2024/06/09 18:43

面 板 也 是 一 个 Swing 容 器 , 它 可 以 作 为 容 器 容 纳 其 他 组 件 , 但 它 也 必 须 被 添 加 到 其 他 容 器 中 。Swing 中 常 用 的 面 板 包 括 JPanel面 板 和 JScrollPane 面 板 。

JPanel 面 板

JPanel 面 板 可 以 聚 集 一 些 组 件 来 布 局 。 首 先 应 该 明 确 的 是 面 板 也 是 一 种 容 器 , 因 为 它 也 继 承 自java.awt.Container类。

〖 例 〗 在 项 目 中 创 建 JPanelTest 类 , 该 类 继 承 JFrame 类 成 为 窗 体 组 件 , 在 该 类 中 创 建 4 个 JPanel面 板 组 件 , 并 将 它 们 添 加 到 窗 体 中 。

import java.awt.Container;import java.awt.GridLayout;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;public class JPanelDemo extends JFrame{    public JPanelDemo(){        setTitle("练习JPanel");        setVisible(true);        setSize(100,200);        setLocationRelativeTo(this);        Container c=getContentPane();        //将整个容器设置为2行1列的风格布局        c.setLayout(new GridLayout(2,1,10,10));        //初始化一个面板,设置1行3列的网格布局        JPanel p1=new JPanel(new GridLayout(1,3,10,10));        JPanel p2=new JPanel(new GridLayout(1,2,10,10));        JPanel p3=new JPanel(new GridLayout(1,2,10,10));        JPanel p4=new JPanel(new GridLayout(2,1,10,10));        //在面板中添加按钮        p1.add(new JButton("1"));        p2.add(new JButton("2"));        p3.add(new JButton("3"));        p4.add(new JButton("4"));        //在窗口中添加面板        c.add(p1);        c.add(p2);        c.add(p3);        c.add(p4);    }    public static void main(String args[]){        new JPanelDemo();    }}

结果:
这里写图片描述

JScrollPane面板

在 设 置 界 面 时 , 可 能 会 遇 到 在 一 个 较 小 的 容 器 窗 体 中 显 示 一 个 较 大 部 分 内 容 的 情 况 , 这 时 可 以 使 用 JScrollPane 面 板 。 JScroIIPane 面 板 是 带 滚 动 条 的 面 板 , 它 也 是 一 种 容 器 , 但 是 JScrollPane 只 能 放 置 一 个 组 件 , 并 且 不 可 以 使 用 布 局 管 理 器 。 如 果 需 要 在 JScrollPane 面 板 中 放 置 多 个 组 件 , 需 要 将 多 个 组 件 放 置 在 JPanel 面 板 上 , 然 后 将 JPanel 面 板 作 为 一 个 整 体 组 件 添 加 在 JScrollPane 面 板 上 。

〖 例 〗 在 项 目 中 创 建 JScrollPaneTest 类 , 该 类 继 承 JFrame 类 成 为 窗 体 组 件 , 在 该 类 中 创
建 4 个 JScrollPane 面 板 组 件 , 并 将 它 们 添 加 到 窗 体 中 。

import java.awt.Container;import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTextArea;public class JScrollPaneDemo extends JFrame{    public JScrollPaneDemo(){        //设置窗体的属性        setTitle("JScrollPane");        setSize(200,200);        setLocationRelativeTo(this);        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        setVisible(true);        Container c=getContentPane();   //创建容器        JTextArea jt=new JTextArea(20,50);   //创建文本域组件        jt.setText("带滚动条的文字编译器");             JScrollPane js=new JScrollPane(jt);   //创建JScrollPane面板对象        c.add(js);          //将面板添加到容器中    }    public static void main(String[] args) {        new JScrollPaneDemo();    }}

结果:
这里写图片描述

原创粉丝点击