0

こんにちは Java でマウスホイール イベントの練習をしているので、マウスホイールを動かすと成長してエビができるサークルを作成しました。今度は、画面上のマウス ポインターの横に「MousWheel」のサイズも表示したいと思います。これを行う方法の例を誰かに見せてもらえますか?

これは私が今得たものです。

public class MouseWheelPanel extends JPanel implements MouseWheelListener {

private int grootte = 50;

public MouseWheelPanel() {
    this.addMouseWheelListener(this);
}

public void paintComponent( Graphics g ) {
    super.paintComponent( g );
    g.setColor( Color.YELLOW ); 
    g.fillOval( 10, 10, grootte, grootte );
}


public void mouseWheelMoved( MouseWheelEvent e ) {
    // TODO Auto-generated method stub
    String 
    grootte += e.getWheelRotation();
    repaint(); 
}

}
4

1 に答える 1

1

テキストの配置にも関心があると仮定します。FontMetrics を検索します。これにより、サイズ文字列が円の中央に配置されます。

public void paintComponent(Graphics g)
{
    super.paintComponent(g);
    g.setColor(Color.YELLOW);
    g.fillOval(10, 10, grootte, grootte);

    String str = ""+grootte;
    FontMetrics fm = g.getFontMetrics();
    Rectangle2D strBounds = fm.getStringBounds(str, g);

    g.setColor(Color.BLACK);
    g.drawString(str, 10 + grootte/2 - (int)strBounds.getWidth()/2, 10 + grootte/2 + (int)strBounds.getHeight()/2);
}
于 2012-12-04T21:08:41.287 に答える