LINUX.ORG.RU

История изменений

Исправление Xintrea, (текущая версия) :

Ну вот я обнаружил такую дичь, что в глубинах QTableView::mouseMoveEvent() может вызываться setSelection() и соответственно генерироваться selectionChanged(), причем в передаваемых QIndex будут ячейки не те, с которыми работает пользователь, а соседние.

Происходит это раз в 15-20 попыток работы со строкой таблицы, если нагрузить проц какой-нибудь задачей, и быстро двигать мышкой.

https://i.imgur.com/fA3NCma.png

Поэтому я и думаю: а нафига вообще вызывать QTableView::mouseMoveEvent()? Тем более, что в примерах драг-анд-дропа в переопределенном mouseMoveEvent() нет вызова родительского обработчика mouseMoveEvent(): https://code.qt.io/cgit/qt/qtbase.git/tree/examples/widgets/draganddrop/dragg....

Наверно, это не просто так?

Исходная версия Xintrea, :

Ну вот я обнаружил такую дичь, что в глубинах QTableView::mouseMoveEvent() может вызываться setSelection() и соответственно генерироваться selectionChanged(), причем в передаваемых QIndex будут ячейки не те, с которыми работает пользователь, а соседние.

Происходит это раз в 15-20 попыток работы со строкой таблицы, если нагрузить проц какой-нибудь задачей, и быстро двигать мышкой.

https://i.imgur.com/fA3NCma.png

Поэтому я и думаю: а нафига вообще вызывать QTableView::mouseMoveEvent()? Тем более, что в примерах драг-анд-дропа в переопределенном mouseMoveEvent() нет вызова родительского. Наверно, это не просто так.