-
UID:47997
-
- 注册时间2008-06-24
- 最后登录2009-07-15
- 在线时间317小时
-
- 发帖482
- 搜Ta的帖子
- 精华0
- 金钱5750
- 威望526
- 贡献值106
- 好评度525
-
访问TA的空间加好友用道具
|
—
本帖被 XChinux 执行加亮操作(2008-11-30)
—
主要是重写三个 event 方法 - import java.util.List;
- import com.trolltech.qt.core.QUrl;
- import com.trolltech.qt.core.Qt;
- import com.trolltech.qt.gui.QDragEnterEvent;
- import com.trolltech.qt.gui.QDragMoveEvent;
- import com.trolltech.qt.gui.QDropEvent;
- import com.trolltech.qt.gui.QListView;
- import com.trolltech.qt.gui.QStringListModel;
- class MyListView extends QListView {
- List<String> list;
- public MyListView() {
- super();
- setAcceptDrops(true);
- }
- public MyListView(Object widget) {
- super();
- setAcceptDrops(true);
- }
- public void dragEnterEvent(QDragEnterEvent event) {
- event.setDropAction(Qt.DropAction.CopyAction);
- event.accept();
- }
- public void dragMoveEvent(QDragMoveEvent event) {
- event.accept();
- }
- public void dropEvent(QDropEvent event) {
- for (QUrl fn : event.mimeData().urls()) {
- String fileName = fn.toLocalFile().replace("file:///", "");
- if (!list.contains(fileName))
- list.add(fileName);
- }
- ((QStringListModel) this.model()).setStringList(list);
- System.out.println(event.mimeData().urls().get(0).toString());
- event.accept();
- }
- public List<String> getList() {
- return list;
- }
- public void setList(List<String> list) {
- this.list = list;
- }
- }
|