java - 使用drawString显示文本的问题

标签 java graphics

当我在没有“g.drawString(“Play”,50,50)”的情况下运行该程序时,它运行良好。框架的背景是纯白色。但是当我添加那行代码时,框架的背景变得几乎透明。这就像我的屏幕在 450 x 800 像素区域的屏幕截图

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

public class NotTicTacToe extends JFrame {

    public static void main(String[] args) {
        new NotTicTacToe();
    }
    public NotTicTacToe() {
        setTitle("Not Tic Tac Toe");
        setSize(450, 800);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setResizable(false);
        setVisible(true);
        JTextField textfield1= new JTextField ("PLAY",50);
    }

    public void paint(Graphics g) {
        g.setColor(Color.RED);
        g.drawRect(200, 257, 50, 50);
        g.setColor(Color.BLUE);
        g.fillRect(201, 258, 49, 49);
        g.drawString("Play",50, 50);
    }

}

最佳答案

添加super.paint(g);到你的paint方法的开头。这会调用 Not TicTacToe 类继承的 JFrame 类中的 Paint 方法。

关于java - 使用drawString显示文本的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60902323/

相关文章:

r - Base R 中的图例 : Can fill refrain from drawing boxes on some lines? 可以填充覆盖整个符号的绘制框吗?

opengl - 如何使用边缘和内部镶嵌因子完成三角形面片镶嵌?

C#/Silverlight/WPF/快速渲染大量圆圈

actionscript-3 - 如何停止 Flex/AIR 异或填充?

java - 迭代拓扑搜索(DFS)

java - TreeMultimap 不允许 null 或空值?

java - 在 finally block 中恢复保存的值?

java - OpenGL使用错误?

linux - Nvidia驱动安装未满足的依赖

java - 如何在 Netbeans 项目中添加指定相对路径的 .jar 文件