當前位置:編程學習大全網 - 編程語言 - java基礎編程50問

java基礎編程50問

進口?javax . swing . *;

進口?Java . awt . *;

進口?Java . awt . event . mouse event;

進口?Java . awt . event . mouse listener;

進口?Java . awt . event . mousemotionlistener;

公共?班級?CirclePanel?延伸?JPanel?{

私人?int?x;

私人?int?y;

私人?int?半徑;

私人?int?mouseDiffX?=?0;

私人?int?小老鼠?=?0;

私人?布爾?激活?=?假的;

公共?CirclePanel(最終?int?x,?決賽?int?y,?決賽?int?半徑){

super();

這個. x?=?x;

這個. y?=?y;

這個半徑?=?半徑;

addMouseListener(新?MouseListener()?{

@覆蓋

公共?作廢?mouseClicked(最終?MouseEvent?mouseEvent)?{}

@覆蓋

公共?作廢?鼠標按下(最終?MouseEvent?mouseEvent)?{

mouseDiffX?=?mouseEvent.getX()?-?circle panel . this . x;

小老鼠?=?mouseEvent.getY()?-?circle panel . this . y;

激活?=?mouseEvent.getPoint()。距離(

新的?點(CirclePanel.this.x,?CirclePanel.this.y))?& lt?半徑;

}

@覆蓋

公共?作廢?mouseReleased(最終?MouseEvent?mouseEvent)?{已激活?=?假的;}

@覆蓋

公共?作廢?鼠標輸入(最終?MouseEvent?mouseEvent)?{}

@覆蓋

公共?作廢?mouseExited(final?MouseEvent?mouseEvent)?{}

});

addMouseMotionListener(新?MouseMotionListener()?{

@覆蓋

公共?作廢?mouse draged(final?MouseEvent?mouseEvent)?{

如果(激活){

CirclePanel.this.x?=?mouseEvent.getX()?-?mouseDiffX

CirclePanel.this.y?=?mouseEvent.getY()?-?mouseDiffY

paint component(circle panel . this . get graphics());

}

}

@覆蓋

公共?作廢?mouseMoved(最終?MouseEvent?mouseEvent)?{}

});

}

@覆蓋

受保護?作廢?paintComponent(最終?圖形?圖文)?{

super.paintComponent(圖形);

graphics.drawOval(x,y,?半徑,?半徑);

}

公共?靜電?作廢?main(String[]?args)?{

決賽?JFrame?f?=?新的?JFrame(" Test ");

f.setSize(500,?500);

f . set visible(true);

f.getContentPane()。添加(新?CirclePanel(40,?40,?50));

f . setdefaultcloseoperation(JFrame。EXIT _ ON _ CLOSE);

}

}

  • 上一篇:海爾雙動力洗衣機有什麽好處?
  • 下一篇:《智能汽車創新發展戰略》解讀,自動駕駛模擬仿真技術加速發展
  • copyright 2024編程學習大全網