티스토리 뷰

 

안녕하세요 박스여우입니다.

이번에는 java - swing을 통해 만든 gui생성시 창을 화면 중앙으로 정렬시키는 법과

URL을 통해 이미지를 얻어와 GUI에 뿌리는 법을 알아보겠습니다.

 

 

우선 화면을 중앙에 정렬시키는 코드입니다.

1
2
3
4
5
6
7
8
9
    public static void centerToScreen(JFrame frame){
        int digWidth = (int)frame.getSize().getWidth();  //자신이 생성한 gui의 넓이 높이를 구한다
        int digheight = (int)frame.getSize().getHeight();
        
        int scnWidth = (int)Toolkit.getDefaultToolkit().getScreenSize().getWidth();
        int scnHeight = (int)Toolkit.getDefaultToolkit().getScreenSize().getHeight();  //사용자 모니터의 해상도(넓이 높이)를 구한다.
        
        frame.setLocation((scnWidth/2)-(digWidth/2),(scnHeight/2)-(digheight/2));  //화면 중앙에 위치하기 위해 2씩 나눈다.
    }
cs

저같은 경우는 한 프로그램에 gui를 여러개를 생성하기때문에

이코드를 재사용을 자주해서 따로 메소드를 만들어두고 사용한답니다.

 

 

다음으로는

URL을 통해 이미지를 얻어와 textArea에 뿌려주는 코드입니다.

1
2
3
4
5
6
7
8
9
10
11
12
        JTextArea textArea = new JTextArea(){
            { setOpaque( false ) ; }
            public void paintComponent(Graphics g){
                try{
                Image img = new ImageIcon(new URL("http://blogattach.naver.com/a134bd0d1e2a2b9cb054340739d9a2db7b2dd3f7/20150723_291_blogfile/rlatjdfo112_1437645289913_8ymgr4_gif/scr_01.gif?type=attachment")).getImage();  //URL을 통해 이미지를 받아온다.
                g.drawImage(img,0,0,this);  //이미지를 textarea에 뿌립니다.
                img = new ImageIcon(new URL("http://blogattach.naver.com/43d65feffaa3a77b55b2d7e7d83d413999cb31d4e3/20150723_105_blogfile/rlatjdfo112_1437645277959_K4caz6_png/1logo.png?type=attachment")).getImage();
                g.drawImage(img,50,70,this);
                }catch(Exception e){}
                super.paintComponent(g);
            }
        };
cs

URL을 받아오는 경우는 네트워킹이기 때문에 예외가 발생할 가능성이 많습니다.

따라서 try-catch문으로 예외처리를 해야합니다.

 

 

아래는 위소스를 이용하여 제작중인 프로그램의 일부입니다.

이상 박스여우의 포스팅이였습니다.

 

'프로그래밍 > java' 카테고리의 다른 글

바이트 코드 - byte code  (0) 2015.10.08
java - json 사용하기  (430) 2015.08.02
Java - 폴더 복사  (0) 2015.07.15
java - Socket을 이용한 파일전송  (414) 2015.07.14
Java - File 이어쓰기  (389) 2015.07.13
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함