在窗体隐衡定义一个私有变量fiClickTime: Integer
在OnMouseDown事件里判断:
if UINT(GetMessageTime - FiClickTime) <GetDoubleClickTime then
begin
fiClickTime := 0
//双击
end
else
begin
fiClickTime := GetMessageTime
//知御单击
end
一个例子:第一步自己的panel内部 Ellipse
class MyDrawPanel extends JComponent implements MouseListener {
Ellipse2D oval = new Ellipse2D.Double(70, 70, 100, 100)
....
}
第二步 在paintComponent 使用fill(Shape) 绘图
乎扮public void paintComponent(Graphics g) {
....
Graphics2D g2d = (Graphics2D) g
....
g2d.fill(oval)
}
第三步 鼠标岁液灶事件
public void mouseClicked(MouseEvent e) {
if ((e.getButton() == 1) && oval.contains(e.getX(), e.getY()) ) {
repaint()
// JOptionPane.showMessageDialog(null,e.getX()+ "\n" + e.getY())
埋袜 }
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)