1

我使用 QWidget 显示作为对话框。并将 QAxWidget 作为子小部件。但是如果我将父小部件设置为透明,则 QAxWidget 将不会显示。

QWidget* widget = new QWidget;
widget->setAttribute(Qt::WA_TranslucentBackground);
......;

QAxWidget* axieBrowser= new QAxWidget(widget);
axieBrowser->setControl(QString::fromUtf8("{8856F961-340A-11D0-A96B-00C04FD705A2}"));
axieBrowser->dynamicCall("Navigate(const QString&)", "www.google.com");

如果您使用其他小部件,我会尝试,它会显示,只有 QAxWidget 不显示!我怎么能解决这个问题?

4

1 回答 1

0

@Dariusz Scharsig 我使用此功能强制 QWidget 新鲜,因为 repaint() 无效。

void CMyDialog::changeRectToFresh()
{
    this->showNorMal();
    QRect rect = this->geometry();
    this->setGeometry(rect.adjusted(-1,-1,1,1);
    //recover
    this->setCeometry(rect);
}
于 2014-01-08T08:24:19.330 回答