邱小明鹏 2021-12-15 22:51 采纳率: 100%
浏览 52
已结题

Java里paint怎么调用的,两个setColor为什么不会重写??


为什么这两个setColor不会冲突,反而可以一个颜色一个设背景
paint是怎么调用的


package com.qxp;

import javax.swing.*;
import javax.xml.crypto.Data;
import java.awt.*;
import java.util.Date;

public class Time extends JFrame implements Runnable {
    Thread clock;
    public  Time()
    {
        super("Clock-CN");
        this.setFont(new Font("Times New Roman", Font.BOLD, 60));
        this.go();
        this.setSize(280,100);
        this.setVisible(true);
    }
    @Override
    public void run() {
        while(true)
        {
            repaint();
            try {
                Thread.sleep(1000);
            }catch (InterruptedException e){}
        }
    }
    public  void go()
    {
        if (clock==null)
        {
            clock=new Thread(this);
            clock.start();
        }
    }
    public void stop()
    {
        clock=null;
    }
    public  void  paint(Graphics g)
    {
        String s="";
        Date now = new Date();
        int hour=now.getHours();
        int minute=now.getMinutes();
        int second=now.getSeconds();
        s=hour+":"+minute+":"+second;
        *** g.setColor(Color.WHITE);**
        Dimension dim = getSize();
        g.fillRect(0, 0, dim.width, dim.width);
    **   g.setColor(Color.BLACK);**
        g.drawString(s,20 , 80);
    }
    public static void main(String[] args) {
        Time that=new Time();
        that.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}


```

  • 写回答

2条回答 默认 最新

  • CSDN专家-sinJack 2021-12-16 08:57
    关注

    因为第一次调用setColor()方法表示给背景设置颜色。
    第二次调用setColor()方法表示给画笔设置颜色。
    底层是根据你调用的次数,来确定是给背景设置颜色还是画笔的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月24日
  • 已采纳回答 12月16日
  • 创建了问题 12月15日

悬赏问题

  • ¥25 关于##爬虫##的问题,如何解决?:
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型
  • ¥50 buildozer打包kivy app失败
  • ¥30 在vs2022里运行python代码
  • ¥15 不同尺寸货物如何寻找合适的包装箱型谱
  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误