Drag & Drop event end



  • Hi Folks,

    I have a small application, where I'm using QTableView with QStandardItemModel. I enabled the drag & drop whithin the table.
    My problem is, that I couldn't find an lightweight, stange-forward way to detect the exact finish of drag & drop, when the model is in the final state, which is visible for the user.

    Can anybody tell me, how should I catch this?

    Regards,
    Nobert



  • Hi,

    I checked your suggestion, and I tried out with the following code:
    @
    view->horizontalHeader()->setSectionsMovable(true);
    view->verticalHeader()->setSectionsMovable(true);

    connect(view->horizontalHeader(),   &QHeaderView::sectionMoved, [this](int, int, int) {qDebug() << "horizontal";});
    connect(view->verticalHeader(),     &QHeaderView::sectionMoved, [this](int, int, int) {qDebug() << "vertical";});
    

    @

    but nothing was happening.
    could you provide me some code example, how should I use the headerView?

    Regards,
    Nobert

    can Anybody help me?


  • Lifetime Qt Champion

    @
    QTableView *tableWidget = new QTableView;
    QStandardItemModel *itemModel = new QStandardItemModel;
    tableWidget->setModel(itemModel);

    itemModel->setColumnCount(4);
    itemModel->setRowCount(5);
    
    for (int col = 0 ; col < itemModel->columnCount() ; ++col) {
        for (int row = 0 ; row < itemModel->rowCount() ; ++row) {
            QStandardItem *item = new QStandardItem(tr("Test %1 %2").arg(col).arg(row));
            itemModel->setItem(row, col, item);
        }
    }
    
    tableWidget->horizontalHeader()->setSectionsMovable(true);
    tableWidget->verticalHeader()->setSectionsMovable(true);
    

    @

    With that you can move rows up and down and columns left to right


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.