2014-01-06 5 views
1

QWidget show를 대화 상자로 사용했습니다. 그리고 하위 위젯으로 QAxWidget을 넣으십시오. 그러나 부모 위젯을 투명하게 설정하면 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 만 표시되지 않습니다! 어떻게하면 fi 그게 xed 수 있습니까?

+0

QWidget의 QLabel과 같은 다른 위젯과 동일합니까? – lpapp

+1

이것은 ActiveX 위젯의 제한 일 수 있습니다. 그러나 완전히 확실하기 위해서는 Internet Explorer 또는 ActiveX가 특별히 필요합니까? 벤더 중립적 인 웹 페이지를 표시하기 만하면 QtWebkit 라이브러리가 잘 작동합니다. –

+0

@LaszloPapp 레이블과 같은 다른 위젯을 사용합니다. @ John Chadwick 예, Internet Explorer를 사용해야하며 대신 QWebView를 사용할 수 없습니다. – lvshuchengyin

답변

0

@Dariusz Scharsig repaint()가 효과가 없으므로이 함수를 사용하여 QWidget을 강제로 새로 고칠 수 있습니다.