Создать апплет, в котором будет карта - Java
Формулировка задачи:
Уважаемые программисты, помогайте срочно.
Создать апплет в котором будет картинка карты.
При двойном нажатии появляются 2 точки и между ними считывается расстояние.
Решение задачи: «Создать апплет, в котором будет карта»
textual
Листинг программы
- package priv;
- import java.applet.Applet;
- import java.awt.Graphics;
- import java.awt.event.MouseEvent;
- import java.awt.event.MouseListener;
- import java.awt.event.MouseMotionListener;
- import java.io.File;
- import java.io.IOException;
- import javax.imageio.ImageIO;
- public class Map extends Applet implements MouseListener, MouseMotionListener {
- /**
- *
- */
- private static final long serialVersionUID = 1L;
- String msg1 = "";
- String msg2 = "";
- int curX = 0,
- curY = 0,
- k = 0;
- int x1,y1,x2,y2;
- double r;
- Object image;
- //Image picture;
- //BufferedImage scaled;
- public void init()
- {
- addMouseListener(this);
- addMouseMotionListener(this);
- //picture = getImage(getDocumentBase(), getParameter("src//1.jpg"));
- try {
- image = ImageIO.read ( new File( "src//1.jpg" ));
- } catch ( IOException ex ) { }
- }
- public void mouseClicked(MouseEvent event) {
- //TODO Auto-generated method stub
- curX = event.getX();
- curY = event.getY();
- if (k == 0) k = 1;
- if (k == 1)
- {
- x1 = curX;
- y1 = curY;
- msg1 = "1.";
- }
- else
- if (k==2)
- {
- x2 = curX; y2 = curY;
- msg2 = "2.";
- }
- repaint();
- }
- public void mouseEntered(MouseEvent e) {}
- public void mouseExited(MouseEvent e) {}
- public void mousePressed(MouseEvent e) {}
- public void mouseReleased(MouseEvent e) {}
- public void mouseDragged(MouseEvent e) {}
- public void mouseMoved(MouseEvent e) {
- showStatus("Koordinati: " + e.getX() + ", " + e.getY());
- }
- public void paint (Graphics g) {
- //scaled = new BufferedImage(200, 200, BufferedImage.TYPE_INT_RGB);
- // Graphics2D g = scaled.createGraphics();
- //g.drawImage(picture, 0, 0, 200, 200, null);
- //g.drawImage(picture, 0, 0, this) ;
- if (k==1)
- {
- g.drawString(msg1, x1, y1); k=2;
- }
- else
- if (k==2)
- {
- g.drawString(msg1, x1, y1);
- g.drawString(msg2, x2, y2);
- g.drawLine(x1, y1, x2, y2);
- r = Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
- g.drawString("Расстояние: "+r, x2, y2+30);
- k=1;
- }
- } // paint
- } // meline1
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д