Я вот из одной своей штуки решил выдрать и оформить в виде самостоятельного виджета по аналогии с QRubberBand.
https://bitbucket.org/mitrich_k/selectionresizerИспользуется следующим образом:
C++ (Qt)
//создаем, настраиваем
resizer = new SelectionResizer(this);
resizer->setMovable(true);
resizer->setActiveBorderPen(QPen(Qt::red));
//коннектим к слоту, в котором будем обновлять геометрию объекта
connect(resizer, SIGNAL(selectionChanged(QRect)), SLOT(onSelectionChanged(QRect)));
//....
//Когда надо выделить объект, вызываем
resizer->setSelection(x, y, w, h);
resizer->show();
//когда закончили
resizer->hide();