2016-03-22 13 views
0

ait birden çok kez denir İlk aramaların her zaman counter'un başlangıç ​​değeri (0 bu durumda) olduğu ve ikinci aramanın counter en son tutulan değerine sahip olduğu onKeyUp. onKeyUp mantığını eklediğim yöntem de synchronized olarak işaretlenir. Ayrıca onKeyUp çağrıldıktan sonra HandlerRegistration'un removeHandler() yöntemini çağırmayı denedim. Sonuç, söz konusu iki aramanın ilk anahtar olaydan sonra gerçekleşmesiydi, ancak başka bir kilit olay gerçekleştirdiğimde yalnızca bir tane daha arama gerçekleşti ve daha fazla anahtar olay yerleri gerçekleşmedi. Bunun süperdev modu ile ilgili olduğunu veya derlemeden sonra bir miktar iç yük olduğunu varsayalım. GWT'de etkinlik işleyicileri eklemenin doğru yolu nedir? HandlerRegistration'ın removeHandler() yöntemini arayarak her işleyiciye her zaman dikkat etmemiz gerekiyor mu?Gwt en KeyUpHandler şöyle bir <code>Button</code> nesneye bir <code>KeyUpHandler</code> ekledik yerine tek

+0

İşleyiciyi bir kereden fazla ekler misiniz? – Baz

+0

Evet, ancak farklı işleyicileri MouseUpHandler ve KeyUpHandler. Ancak, tuş nesnesi oluşturulduğunda MouseUpHandler eklenirken, KeyUpHandler'ı bir Runnable üzerinden ekliyorum. Ayrıca hem klavye hem de fare olayları için ClickHandler'ın çağrıldığını anladım. Oluşturduğunuz işleyici – baris

+1

herhangi bir döngüde mi çağırıyor? –

cevap

0

Re: tıklama için birden aramalarla ilgili yorumunuz/mouseup/keyUp

tarayıcı, herhangi bir olay etkin bir tıklıyorsunuz zaman bunu ateşleyerek tıklama işleyicisi için "yardım", ya mousedown, o zaman hiçbir hamle mouseUp ama ya çeşitli dokunuş veya klavye olayları. Önceden ele aldığınız bir olayda preventDefault() öğesini çağırmayı düşünün ve tarayıcının daha fazla bakmasını istemediğinizi düşünün. Örneğin, bunu mouse ve klavyede çağırırsanız, o zaman bu eylemler hiçbir zaman tıklama etkinliklerinin kapanmasına neden olmamalıdır.

+0

Evet, şimdi denedim ama değişmedi. Güncellenmiş sorumu görün. – baris

İlgili konular