#java #applet
#java #апплет
Вопрос:
Я хочу отобразить изображение в апплете и воспроизвести аудиоклип. Я написал следующий код, но он не работает. Я написал код только для изображения, но не имею ни малейшего представления о аудиоклипе. Пожалуйста, дайте мне знать, где я допускаю ошибку..
import java.applet.*;
import java.awt.*;
import java.net.*;
/*
<applet code="Showimage" width = 400 height = 400>
</applet>
*/
public class Showimage extends Applet
{
URL codb;
Image picture;
public void init()
{
codb = getCodeBase();
picture = getImage(codb, "Choti.jpg");
}
public String getAppletInfo()
{
return "Hi...";
}
public void start() { }
public void paint(Graphics g)
{
g.drawImage(picture, 10, 10, this);
showStatus(getAppletInfo());
}
}
Ответ №1:
import java.applet.*;
import java.awt.*;
import java.net.*;
/*
<applet code="Showimage" width = 400 height = 400>
</applet>
*/
public class Showimage extends Applet
{
URL codb;
Image picture;
AudioClip clip;
public void init()
{
picture = getImage(getCodeBase(), "../images/Beagle.jpg");
clip = getAudioClip(getDocumentBase(), "sound/woof.wav");
}
public String getAppletInfo()
{
return "Hi...";
}
public void start() {
clip.play();
showStatus(getAppletInfo());
}
public void paint(Graphics g)
{
g.drawImage(picture, 10, 10, this);
}
}
Нашел бы изображение и звук с этой структурой каталогов.
- Изображения
- Beagle.jpg
- апплет
- звук
- woof.wav
- applet.html
- звук
Комментарии:
1. Что означает «.. /images/Beagle.jpg » среднее значение на картинке = getImage(getCodeBase(), «../images/Beagle.jpg «); Что такое .. перед/imges
2.
..
в URL-адресе означает каталог ‘родительский каталог. The codebase is not specified in the HTML so it defaults to the same as the document base (the
апплета`). Нам нужно извлечь изображение изimages
каталога, который находится «рядом» сapplet
каталогом. Посмотрите структуру списка внизу сообщения, она показывает структуру каталогов / файлов, которая будет работать для показанного кода.3. @ Эндрю Томпсон все еще не понял с объяснением. Вы имеете в виду, что мне нужно сохранить каталог изображений в той же папке, что и в каталоге апплета? Я хочу отобразить изображение из любого каталога моего локального диска. Могу ли я сделать это с помощью этого кода?? Извините, но я новичок в JAVA..
4. Локальный диск не подходит. Только подписанный и доверенный апплет может загружать файлы из локальной файловой системы, и тогда это локальная файловая система компьютера, которую использует конечный пользователь . Если изображение и клип должны использоваться в изолированном апплете, они должны находиться где-то на том же сайте , что и апплет.
5. . Вы хотите сказать, что мне нужно сохранить файл .class и каталог изображений в одной папке??
Ответ №2:
applet
Класс и изображение "Choti.jpg"
должны находиться в одной папке.
Используйте getImage(java.net.URL)
метод для получения изображения из другого местоположения / папки и используйте play(URL,string)
play(URL)
метод или для воспроизведения аудиоклипа. Для получения более подробной информации посетите учебное пособие по апплету.
Комментарии:
1. @AVD..Is есть какой-нибудь способ отобразить изображение из любой другой папки ..?? А как насчет аудиоклипа? Как я могу его воспроизвести..