我有一个FocusPanel,其中包含一个Label。 然后我将DragStartHandler添加到FocusPanel,如下面的代码:
focusPanel.addDomHandler(new DragStartHandler() {
@Override
public void onDragStart(DragStartEvent event)
{
focusPanel.getElement().getStyle().setBackgroundColor("yellow");
event.getDataTransfer().setDragImage(focusPanel.getElement(), 10, 10);
dragSourceIndex = getFocusPanelIndex(focusPanel);
}
}, DragStartEvent.getType());
我可以在Chrome中拖动它,但在IE和Firefox中无法执行此操作。此外,如果我首先突出显示focuspanel的文本,那么当它突出显示时我可以拖动。
有谁知道出了什么问题?
感谢。
答案 0 :(得分:1)
我通过在MouseDownEvent上添加突出显示来进行复飞。
focusPanel.addMouseDownHandler(new MouseDownHandler() {
@Override
public void onMouseDown(MouseDownEvent event)
{
markText(focusPanel.getWidget().getElement());
}
});
从这里学习markText方法: Set selected text in GWT (in order to make copy paste easier)
这是一个黑客攻击,但至少有效。 现在的问题是," drop" IE中没有发生事件。我使用IE 11。