Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отрисовать изображение на JPanel 
:(
    Опции темы
monax
Дата 28.9.2007, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 125
Регистрация: 9.6.2005

Репутация: нет
Всего: 4



При рисовании изображений в апплете столкнулся с проблемой отображения картинок. После инициализации апплета картинка не отрисовывается, при этом строка ffffffffffffff выводится. Если поверх браузера открыть другое окно, а затем свернуть, то изображение появляется.
Код

package paint_img;

import java.awt.Image;
import java.awt.MediaTracker;

import javax.swing.JApplet;

public class Test extends JApplet {

    private static final long serialVersionUID = -6301225239117L;
    
    private Screen screen;

    public void init() {
        String filesNames[] = { "1.png", "2.png" };
        MediaTracker tracker = new MediaTracker(this);
        Image imgs[] = new Image[2];
        for (int i = 0; i < imgs.length; i++) {
            imgs[i] = getImage(getCodeBase(), "resource/" + filesNames[i]);
            tracker.addImage(imgs[i], i);
            try {
                tracker.waitForID(i);
            } catch (InterruptedException ie) {
            }
            imgs[i].flush();
        }
        
        screen = new Screen(imgs);
        setContentPane(screen);
    }
}


Код

package paint_img;

import java.awt.Graphics;
import java.awt.Image;

import javax.swing.JPanel;

public class Screen extends JPanel {

    private static final long serialVersionUID = 1521080877462801889L;

    private Image imgs[] = new Image[2];

    public Screen(Image imgs[]) {
        super();
        this.imgs = imgs;
    }

    public void paintComponent(Graphics gc) {
        super.paintComponent(gc);

        gc.drawImage(imgs[0], 0, 0, 100, 100, null);
        gc.drawImage(imgs[1], 100, 100, 100, 100, null);

        gc.drawString("ffffffffffffff", 100, 20);
    }
}



Попробовал заменить в этом коде
Код


        gc.drawImage(imgs[0], 0, 0, 100, 100, null);
        gc.drawImage(imgs[1], 100, 100, 100, 100, null);

null на this, проблема вроде бы исчезла, но меня теперь не отпускает мысль, почему так?
--------------------
Лаборатория программиста
PM MAIL WWW ICQ Jabber   Вверх
RebornCrusader
Дата 30.9.2007, 13:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 18.1.2007
Где: Владивосток

Репутация: нет
Всего: 6



Цитата(monax @  28.9.2007,  23:20 Найти цитируемый пост)
null на this, проблема вроде бы исчезла, но меня теперь не отпускает мысль, почему так?

Вчера весь день пытался вставить дискету наклейкой вперёд. Не лезет, и всё тут! Потом перевернул - получилось, но меня теперь не отпускает мысль, почему так?

JavaDoc как всегда рулит:
Цитата

Otherwise, drawImage returns false and as more of the image becomes available or it is time to draw another frame of animation,  the process that loads the image notifies the specified image observer.

--------------------
"Fais se que dois, - adviegne que peut. C'est commande au chevalier"
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Апплеты | Следующая тема »


 




[ Время генерации скрипта: 0.0405 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.