0
我想繪製一個字符串在基於鼠標位置的特定點(只有當我拖動)。GWT鼠標移動
問題是,它似乎可以縮放x和y。當我用鼠標在0,0時,字符串顯示在正確的位置,但是當我離開時,字符串越來越遠離我的鼠標,這讓我覺得有一個隱藏的縮放事件正在進行......我使用event.getX()和畫布的位置,我應該使用其他組合來獲取正確的鼠標位置嗎?下面
是代碼
final Canvas canvas = Canvas.createIfSupported();
final AsyncBool mouseDown = new AsyncBool(false);
final Context2d context = canvas.getContext2d();
context.setFont("bold 8px sans-serif");
canvas.setWidth("100%");
canvas.setHeight("100%");
canvas.addMouseMoveHandler(new MouseMoveHandler() {
@Override
public void onMouseMove(MouseMoveEvent event)
{
if(mouseDown.getBool())
{
context.fillText("Bored.", event.getX() - canvas.getAbsoluteLeft(), event.getY() - canvas.getAbsoluteTop());
}
}
});
canvas.addMouseDownHandler(new MouseDownHandler() {
@Override
public void onMouseDown(MouseDownEvent event)
{
mouseDown.setBool(true);
}
});
canvas.addMouseUpHandler(new MouseUpHandler() {
@Override
public void onMouseUp(MouseUpEvent event)
{
mouseDown.setBool(false);
}
});
RootPanel.get().add(canvas);
非常感謝,像魅力一樣工作! – will