利用Swing做的简单的习题(一)

题目:

Java语言程序设计(梁勇)第八版
第十二章编程习题:P347,12.8

*12.8 (Swing通用特性)显示包含六个标签的框架。将标签背景颜色设置为白色。将标签前景色分别设置为黑色、蓝色、青色、绿色、洋红色和橙色,设置每个标签的边界为黄色的线边界。设置每个标签的字体为TimesRoman、加粗、20像素。将每个标签的文本和工具提示文本都设置为它的前最色的名字。

效果如下:

在这里插入图片描述

代码如下:

package Test;

import javax.swing.*;
import java.awt.*;

public class TestFrame extends JFrame{

    public TestFrame(){
        setLayout(new GridLayout(2,3));

        JLabel label1=new JLabel("balck");
        label1.setForeground(Color.black);
        label1.setBorder(BorderFactory.createLineBorder(Color.yellow));
        label1.setOpaque(true);
        label1.setBackground(Color.white);
        label1.setFont(new Font("TimesRoman", Font.BOLD,20));
        label1.setToolTipText("black");
        add(label1);

        JLabel label2=new JLabel("blue");
        label2.setForeground(Color.blue);
        label2.setBorder(BorderFactory.createLineBorder(Color.yellow));
        label2.setOpaque(true);
        label2.setBackground(Color.white);
        label2.setFont(new Font("TimesRoman", Font.BOLD,20));
        label2.setToolTipText("blue");
        add(label2);

        JLabel label3=new JLabel("cyan");
        label3.setForeground(Color.cyan);
        label3.setOpaque(true);
        label3.setBackground(Color.white);
        label3.setBorder(BorderFactory.createLineBorder(Color.yellow));
        label3.setFont(new Font("TimesRoman", Font.BOLD,20));
        label3.setToolTipText("cyan");

        add(label3);


        JLabel label4=new JLabel("green");
        label4.setForeground(Color.green);
        label4.setOpaque(true);
        label4.setBackground(Color.white);
        label4.setFont(new Font("TimesRoman", Font.BOLD,20));
        label4.setToolTipTex
        t("green");
        label4.setBorder(BorderFactory.createLineBorder(Color.yellow));

        add(label4);

        JLabel label5=new JLabel("magenta");
        label5.setForeground(Color.magenta);
        label5.setOpaque(true);
        label5.setBackground(Color.white);
        label5.setFont(new Font("TimesRoman", Font.BOLD,20));
        label5.setBorder(BorderFactory.createLineBorder(Color.yellow));
        label5.setToolTipText("magenta");

        add(label5);

        JLabel label6=new JLabel("orange");
        label6.setForeground(Color.orange);
        label6.setOpaque(true);
        label6.setBackground(Color.white);
        label6.setFont(new Font("TimesRoman", Font.BOLD,20));
        label6.setToolTipText("orange");

        label6.setBorder(BorderFactory.createLineBorder(Color.yellow));

        add(label6);
    }

    public static void main(String[] args) {
        TestFrame frame=new TestFrame();
        frame.setTitle("Exercise12_8");
        frame.setSize(350,250);
        frame.setLocationRelativeTo(null);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
}

解题思路

通过身体,我们可以知道要用到以下若干个方法

    setLayout(new GridLayout(2,3));

布局格式为网格布局,设置一个6个格子的2X3的网格。

    JLabel label1=new JLabel("balck");

设置一个标签,显示文本名字。

    label1.setForeground(Color.black);

设置标签的前景颜色,所谓的前景颜色一般来说就是标签框的文本颜色。

    label1.setOpaque(true);

设置标签的不透明度,因为默认情况下标签是透明的,如果直接设置标签的背景颜色是看不出来的。

    label1.setBackground(Color.white);

设置标签的背景颜色。

    label1.setFont(new Font("TimesRoman", Font.BOLD,20));

设置标签的字体,括号内的参数分别代表字体、风格、大小。

    label1.setToolTipText("black");

设置工具文本,就是鼠标碰一下就会出现的那个文本。

    label1.setBorder(BorderFactory.createLineBorder(Color.yellow));

设置当前标签的边框颜色。

    add(label1);

把当前标签放入框架内。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值