Как применить JScrollPane к - Java
Формулировка задачи:
Приветствую Всех.
Вот класс:
Вот main:
Не появляется JScrollPane
public class DrawImg extends JPanel{ BufferedImage img = null; Image image = null; DrawImg (BufferedImage bImg) { super(); img = bImg; } @Override public void paint(Graphics g) { super.paint(g); } @Override public void paintComponent(Graphics g) { image = img.getScaledInstance(500,800,Image.SCALE_DEFAULT); g.drawImage(img,5,5,500,800,null); } }
DrawImg myImg = new DrawImg(bufImg); myImg.setLayout(new GridLayout(2,1)); JScrollPane scrollmyImg = new JScrollPane(myImg); frame.add(scrollmyImg);
scrollmyImg
. Почему так? Что нужно сделать? Где лучше выводить изображение вpaintComponent ()
или вpaint()
?Решение задачи: «Как применить JScrollPane к»
textual
Листинг программы
import javax.imageio.ImageIO; import javax.swing.*; import java.awt.*; import java.awt.image.BufferedImage; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; public class Main2 { JFrame frame; BufferedImage bufImg; Main2 () throws IOException { frame = new JFrame(); frame.setLayout( new GridLayout(1,1)); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //frame.setResizable(false); frame.setSize(800,800); frame.setLocationRelativeTo(null); frame.setVisible(true); String strURL = "http://i.playground.ru/i/93/88/85/10/pix/image.jpg"; BufferedImage bufImg ; bufImg = ImageIO.read(new URL(strURL)); DrawImg myImg = new DrawImg(bufImg); myImg.setLayout(new GridLayout(1,1)); JScrollPane scrollmyImg = new JScrollPane(myImg); frame.add(scrollmyImg); } public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { try { new Main2(); } catch (IOException e) { e.printStackTrace(); } } }); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д