![](/img/trans.png)
[英]QTreeWidget; Disabling ui Features when multiple Items are selected in QTree
[英]QTreeWidget snaps back when moving items
當我使用 QTreeWidget(通過 qdesigner)並將 dragDropMode 設置為 InternalMove,然后嘗試移動其中一個項目時,滾動條會彈回到我移動的項目的原始位置。 我希望滾動條停留在項目被丟棄的位置。 有沒有簡單的方法來做到這一點? 我調整了defaultDropAction,但無濟於事。
弄清楚了...
class MyTree : public QTreeWidget
{
Q_OBJECT
public:
MyTree(QWidget *parent = 0);
signals:
void verticalScrollBarValue(int val);
protected slots:
void setTreeVerticalScroll(int val);
protected:
void dropEvent(QDropEvent *event);
};
MyTree::MyTree(QWidget *parent) : QTreeWidget(parent)
{
connect(this, &MyTree::verticalScrollBarValue,
this, &MyTree::setTreeVerticalScroll);
}
void MyTree::setTreeVerticalScroll(int val)
{
verticalScrollbar()->setValue(val);
}
void MyTree::dropEvent(QDropEvent *event)
{
int v = verticalScrollbar()->value();
QTreeWidget::dropEvent(event);
emit verticalScrollBarValue(v);
}
免責聲明:某處可能有錯字,我無法直接從我的工作環境中復制。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.