画像を傾けて表示させるプログラムを作成しました
続けてフレームの右と下にスクロールバーを配置させたいのですがどうすればよいのかがわかりません。よろしくお願いします。
lang
1import java.awt.Graphics; 2import java.awt.Graphics2D; 3import java.awt.geom.AffineTransform; 4import java.awt.image.BufferedImage; 5import java.io.File; 6 7import javax.imageio.ImageIO; 8import javax.swing.JFrame; 9 10public class ImageKatamukeKairyou2 extends JFrame{ 11 public static void main(String[] args){ 12 ImageKatamukeKairyou2 test = new ImageKatamukeKairyou2(); 13 test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 14 test.setBounds( 0, 0, 1000, 700); 15 test.setTitle("画像表示"); 16 test.setVisible(true); 17 } 18 19 public void paint(Graphics g){ 20 Graphics2D g2 = (Graphics2D)g; 21 22 BufferedImage readImage = null; 23 try { 24 readImage = ImageIO.read(new File("2.jpg")); 25 } catch (Exception e) { 26 e.printStackTrace(); 27 readImage = null; 28 } 29 30 if (readImage != null){ 31 int sw = getWidth();//画面の幅を取得 32 int sh = getHeight();//画面の高さを取得 33 int iw = readImage.getWidth(this);//イメージの幅を取得 34 int ih = readImage.getHeight(this);//イメージの高さを取得 35 int x = (sw-iw)/2;//イメージが横中央になる位置を計算 36 int y = (sh-ih)/2;//イメージが縦中央になる位置を計算 37 38 g2.clearRect(0, 0, sw, sh); //画像枠外の背景を塗り潰す 39 AffineTransform at = new AffineTransform(); 40 at.setToRotation(Math.toRadians(45), sw/2, sh/2); 41 g2.setTransform(at); 42 g2.drawImage(readImage,x,y,this); 43 } 44 } 45}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/08/04 06:28