Как добавить строку, используя отдельный класс? - PullRequest
0 голосов
/ 28 декабря 2018

Я кодирую игру со счетом.Мне нужно создать новый класс под названием «оценка», который может добавить текст в мой исходный класс, это класс.

import java.awt.Graphics;
import java.awt.Color;  
import javax.swing.*;
import javax.swing.JPanel;
import java.awt.Image;
import java.awt.Toolkit;

public class Frame { 

    JFrame frame; 

    Frame() 
    {
        frame = new JFrame("Tetris"); 
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        frame.setSize(500, 600); 
        frame.setLayout(null);

        ImageIcon img = new ImageIcon("Blocks.png");
        frame.setIconImage(img.getImage());
        frame.getContentPane().setBackground(Color.blue);
        frame.setResizable(false);
        frame.setContentPane(new MainPanel());
        frame.setVisible(true);

        JOptionPane.showMessageDialog(null, "        Press Ok To 
            Start","Start", JOptionPane.INFORMATION_MESSAGE);
    } 

    public static void main(String[] args) 
    { 
        new Frame(); 
    } 
}

class MainPanel extends JPanel
{
    MainPanel()
    {
        setOpaque(true);
        setBackground(Color.blue);
    }

    protected void paintComponent(Graphics g)
    {
       super.paintComponent(g);
       g.setFont(g.getFont().deriveFont(27.0F));
       g.setColor(Color.red);
       g.drawString("Score:", 325, 35);
       Image image = Toolkit.getDefaultToolkit().getImage("Blocks.png");
       g.drawImage(image, 420, 500, this);
       g.drawRect(10, 10, 300, 500 );
    }
}

Дайте некоторую помощь.Я пытался использовать расширения, но они не отображаются, и если я пытаюсь сделать это в классе фрейма, он удаляет все остальное, и я хочу, чтобы это было в другом классе, чтобы я мог использовать код для изменения строки внутри класса.

Я пробовал это для Score класса

import java.awt.Graphics;
import java.awt.Color;  
import javax.swing.*;
import javax.swing.JPanel;
import java.awt.Image;
import java.awt.Toolkit;

public class Score {
}

class ScorePanel extends JPanel
{
    ScorePanel()
    {
        setOpaque(true);
        setBackground(Color.blue);
    }

    protected void paintComponent(Graphics g)
    {
        paintComponent(g);  
        g.setFont(g.getFont().deriveFont(27.0F));
        g.setColor(Color.white);
        g.drawString("0000", 340, 35);
    }
 }

Если есть что-то, что я должен изменить, пожалуйста, сообщите мне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...