В моем приложении был использован qsplitter, а для OpaqueResize установлено значение 'false', при перетаскивании маркера сплиттера уменьшающийся виджет перерисовывается непрерывно, это неправильно.Я подумал, что QWidgets с обеих сторон дескриптора сплиттера не должен получать никаких сигналов о перерисовке или изменении размера до mouseRelease. Эта проблема беспокоит меня несколько дней, если кто-нибудь знает о том, как с этим справиться, пожалуйста, помогите мне, спасибовы.Qt5.11.2 в Windows10 64-битная
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
// left
ui->widget_2->bgColor = QColor(255,0,0);
ui->widget_2->tag = 0;
// right
ui->widget_3->bgColor = QColor(0,0,255);
ui->widget_3->tag = 1;
}
MainWindow::~MainWindow()
{
delete ui;
}
MyWidget::MyWidget(QWidget *parent) : QWidget(parent)
{
bgColor = QColor(255,255,255);
tag = 0;
}
void MyWidget::paintEvent(QPaintEvent *event)
{
QWidget::paintEvent( event );
QPainter painter(this);
QBrush brush( bgColor );
painter.fillRect( event->rect(), brush );
qDebug() << "paintEvent:tag="<<tag;
}