티스토리 뷰

Record/JAVA

[GUI] MouseAdapter

Mizzle 2013. 7. 18. 12:07

MouseAdapter

소스코드

 

//MouseDetailsFrame.java  import java.awt.BorderLayout; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent;  import javax.swing.JFrame; import javax.swing.JLabel;  public class MouseDetailsFrame extends JFrame{ 	 	private String details;//문자 	private JLabel statusBar;//라벨 	 	public MouseDetailsFrame(){ 		 		super("Mouse clicks and buttons"); 		statusBar = new JLabel("Click the mouse"); 		add(statusBar , BorderLayout.SOUTH); 		 		MouseClickHandler handler = new MouseClickHandler(); 		this.addMouseListener(handler); 		 		//this.addMouseListener( new MouseClickHandler() ); 	} 	 	private class MouseClickHandler extends MouseAdapter{ 		public void mouseClicked(MouseEvent event){ 			 			int xPos = event.getX();//마우스의 x-position값 받아옴 			int yPos = event.getY();//마우스의 y-position값 받아옴 			 			details = String.format("Clicked %d time(s)", event.getClickCount() ); 			 			if( event.isMetaDown() ){//오른쪽 마우스 버튼 				details += " with right mouse button"; 			}else if( event.isAltDown() ){//가운데 마우스 버튼 				details += " with center mouse button"; 			}else{ 				details += " with left mouse button"; 			} 			 			statusBar.setText(details); 			 		} 	} 	 }  

 

//MainActivity.java  import javax.swing.JFrame;  public class MainActivity {  	public static void main(String[] args) { 		// TODO Auto-generated method stub 		MouseDetailsFrame mouseDetailsFrame = new MouseDetailsFrame();//LabelFrame 생성 		mouseDetailsFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 		mouseDetailsFrame.setSize(300,200);//프레임 크기 지정 		mouseDetailsFrame.setVisible(true);//프레임 표시  	}  }  

 

결과

 

 

 

 

반응형

'Record > JAVA' 카테고리의 다른 글

[GUI] JPanel  (0) 2013.07.18
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
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
글 보관함