首页| 论坛| 消息

标题:新手求问,QListWidget如何实现多项拖拽?
作者:油炸干豆腐
日期:2019-09-09 15:40
内容:

大家好,我是一个初学者,现在在制作一个简易播放器。在制作播放列表的时候遇到了一些问题。
我把QListWidget重新定义来制作播放列表。
对于这个播放列表的想法是:实现一个QListWidget,在同一列表中,可以做到按住control多选,然后选择完毕之后可以自由拖动选好的QListWidgetItem到指定位置。
现在我已经实现了按住control多选,还实现了单个拖拽和多选右键删除。
目前遇到的问题是如果松开control再点我已经选好的item就会取消多选,还有我不清楚如何进行多项拖拽来改变表格。
首先我不能选好之后直接拖拽,这是我处理keypress的地方,因为松开control就会取消多选,导致我选完之后拖动鼠标会取消选择的item,我不知道该怎么办,这是我实现多选的地方。
void PlayListView::keyPressEvent(QKeyEvent *event){
if (event->key() == Qt::Key_Control){
setSelectionMode(QAbstractItemView::MultiSelection);
}
}
void PlayListView::keyReleaseEvent(QKeyEvent *event){
if (event->key() == Qt::Key_Control){
qDebug()


#1 [20091001753 09-11 18:15]
Qt 本就支持 多项拖拽

回复 发表
主题 版块