хранить изображения и отображать в разных классах - PullRequest
0 голосов
/ 13 января 2012

Я пытаюсь получить несколько изображений в классе 'GetImage' и отобразить их в основном классе.

Может кто-нибудь показать мне пример, как это сделать ??Я пробовал кучу других образцов, но они не работали, так как у меня есть два класса.

Вот один, который я попробовал.

main clss:

import java.awt.*;
import hsa.*;

public class Test
{
static Console c;  

    public void Display()
    {
        GetImage c = new GetImage();
        c.paint(g);
    }

    public Test()
    {
        c = new Console ();
    }

    public static void main (String[] args) throws Exception
    {
        Test = new Test();
        a.Display();

    }

}

отдельнокласс:

import java.awt.*;
import hsa.Console;
import java.awt.event.*;

public class GetImage extends Frame
{

    Image image;
    String imageName = "ImageFileName.jpg";

    public void paint (Graphics g)
    {
        Toolkit tool = Toolkit.getDefaultToolkit ();
        image = tool.getImage (imageName);
        g.drawImage (image, 30, 30, this); // location of the image
        g.drawString (imageName, 100, 50); // location of the name
    }
}

1 Ответ

0 голосов
/ 14 января 2012

Я не очень знаком с пакетом hsa, но некоторые быстро ищут в Google, что это образовательный пакет от какой-то компании, которая с тех пор обанкротилась, поправьте меня, если я ошибаюсь. Так что лично я постараюсь не использовать их вещи, если сможешь.

Если вам нужно использовать это для школы или чего-то еще, вы, вероятно, захотите полностью придерживаться их пакета, а не смешивать и сопоставлять hsa с awt. Нечто подобное может выполнить то, что вы хотите, но, опять же, я не знаком с пакетом hsa.

import java.awt.*;
import hsa.*;

public class Test
{
    static Console c;  

    public void Display()
    {
        GetImage gI = new GetImage(c,25,80,12);
    }

    public Test()
    {
        c = new Console ();
    }

    public static void main (String[] args) throws Exception
    {
        Test = new Test();
        a.Display();

    }

}


import java.awt.*;
import hsa.ConsoleCanvasGraphics;
import java.awt.event.*;

public class GetImage extends ConsoleCanvasGraphics
{

    Image image, image2;
    String imageName = "ImageFileName.jpg", image2Name = "Image2FileName.jpg";
    public GetImage(ConsoleParent parent, int rows, int columns, int fontSize)
    {
        Toolkit tool = Toolkit.getDefaultToolkit ();
        image = tool.getImage (imageName);
        image2 = tool.getImage (image2Name);
        super(parent,rows,columns,fontSize);
        drawImage(image,30,30,this);
        drawImage(image2,30,60,this);
        drawString(imageName,100,50,new Font("TimesRoman", Font.PLAIN,  20),Color.BLACK);
        drawString(image2Name,100,80,new Font("TimesRoman", Font.PLAIN,  20),Color.BLACK);
    }

}

Опять же, я бы сам попробовал избежать hsa, но если вы настроены на его использование и вам нужно иметь два отдельных класса в вашей программе, то вышеприведенное должно быть приблизительным описанием того, что может работать.

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