我試圖從qx.ui.table.Table小部件拖到其他小部件。 我無法獲得有關表格行的信息,我試圖拖動。從qx.ui.table.Table拖放(Qooxdoo版本5.x或主)
我想拖動一行(分別是它的內容),而沒有它被聚焦或選擇,例如,只需點擊行並立即開始拖動。
感謝, 弗裏茨
我試圖從qx.ui.table.Table小部件拖到其他小部件。 我無法獲得有關表格行的信息,我試圖拖動。從qx.ui.table.Table拖放(Qooxdoo版本5.x或主)
我想拖動一行(分別是它的內容),而沒有它被聚焦或選擇,例如,只需點擊行並立即開始拖動。
感謝, 弗裏茨
我在這種情況下做什麼,是先設置表focusCellOnPointerMove
屬性true
。
如果您不想讓鼠標移動時突出顯示單元格的反饋,則可以另外撥打table.highlightFocusedRow(false)
來禁止該單元格。
這種方式表格「知道」當前在鼠標指針下的單元/行。
那麼你能夠檢測表的dragstart
事件處理當前行的索引:
_onDragStartGetFocusedRow : function(e) {
var index = this.getFocusedRow();
if(qx.lang.Type.isNumber(index)) {
// do something usefull with this information
// and start dragging
e.addAction("move);
e.addType("myType");
}
},
完成後拖動和刪除,你可以重置焦點行通過調用table.resetCellFocus()
如。在dragend
處理程序中。
這當然只適用於指針設備。
完美地工作。注意:在DragStart處理程序中需要e.addData(「myType」,rowData),因爲在退出表區域時焦點信息會丟失。 –
歡迎來到Stack Overflow。請查看[Tour](https://stackoverflow.com/tour)和[Asking](https://stackoverflow.com/help/asking)。 – Shiro