Why can't ie11 load the DLL generated by the qt-5.6/activeqt-hierarchy-example?
-
Nice! Resizing is most likely is part of the ActiveX specification, and ActiveQt being of good quality supports it.
Is... there? Why is the activeQT window's size less than QT Createor window's size when I set the size of 'WIDTH' and 'HEIGHT' Properties of ActiveQT Object in javascript?
The following screenshots and code
link text<object ID ="osgActiveGLQT" WIDTH = "900" HEIGHT = "600" CLASSID="CLSID:B0545661-8607-43BA-A1C2-B43C0A93D976"> [Object not available! Did you forget to build and register the server?] </object>#ifndef ActiveQTOSGWidget_H #define ActiveQTOSGWidget_H #include <iostream> #include <QtWidgets/QWidget> #include <QtWidgets/QLayout> #include <QtWidgets/QApplication> #include <QtWidgets/QLCDNumber> #include <QTimer> #include <QMessageBox> #include <osgViewer/CompositeViewer> #include <osgViewer/ViewerEventHandlers> #include <osgGA/MultiTouchTrackballManipulator> #include <osgDB/ReadFile> #include <osgQt/GraphicsWindowQt> #include <osg/PolygonOffset> class ActiveQTOSGWidget : public QWidget { public: ActiveQTOSGWidget(QWidget *parent = 0); public: virtual void paintEvent(QPaintEvent* event) { // Update the camera QPainter paint(this); QPen pen; pen.setColor(QColor(255, 0, 0)); QBrush brush(QColor(255, 0, 0)); paint.setPen(pen); paint.setBrush(brush); int ss = width(); paint.drawRect(0, 0, width(), height()); } }; #endif // OSGVIEW_H#ifndef OSGACTIVEGLQT_H #define OSGACTIVEGLQT_H #include <iostream> #include <QtWidgets/QWidget> #include <ActiveQt/QAxBindable> #include <QtWidgets/QLayout> #include <QtWidgets/QApplication> #include <QtWidgets/QLCDNumber> #include <QTimer> #include <QApplication> #include <QDesktopWidget> #include <QMessageBox> #include <QPushButton> #include "ui_osgactiveglqt.h" #include "ActiveQTOSGWidget.h" class osgActiveGLQT : public QWidget,public QAxBindable { Q_OBJECT public: osgActiveGLQT(QWidget *parent = 0); private: Ui::osgActiveGLQTClass ui; }; #endif // OSGACTIVEGLQT_H -
Hmm it works for me, I tried with the hierarchyax sample and when I set WIDTH and HEIGHT in test.html:
.. <p> This widget can have many children! </p> <object ID="ParentWidget" WIDTH = "900" HEIGHT = "600" CLASSID="CLSID:d574a747-8016-46db-a07c-b2b4854ee75c" [Object not available! Did you forget to build and register the server?] </object><br /> ...the ActiveQt window is set to 900x600:

-
Hmm it works for me, I tried with the hierarchyax sample and when I set WIDTH and HEIGHT in test.html:
.. <p> This widget can have many children! </p> <object ID="ParentWidget" WIDTH = "900" HEIGHT = "600" CLASSID="CLSID:d574a747-8016-46db-a07c-b2b4854ee75c" [Object not available! Did you forget to build and register the server?] </object><br /> ...the ActiveQt window is set to 900x600:

@hskoglund
oh~~ How to get the widget window from HWND in Qt5?The following QT4 code
QWidget *myWidget; HWND hwnd; myWidget=QWidget::find(hwnd); -
In Qt5 I think you have to step through all the QWidgets and look for a HWND match, like this:
QWidget *myWidget = nullptr; HWND hwnd; for (auto w : findChildren<QWidget*>()) if (hwnd == (HWND) w->winId()) myWidget = w; -
Thank you very much.
How does the following lambda qt5 code translate into a normal slot for the singleshot in QT4?
QTimer::singleShot(value * 1000,[this] { signalFromQt("Hello no.:" + QString::number(++i)); }); -
@mirro
Qt4 does not support lambdas as far as i know as it must use the new connect syntax that came in Qt5.
So in Qt4 you have to use a normal slot for the singleshot. -
How does the following lambda qt5 code translate into a normal slot for the singleshot in QT4?
[this] { signalFromQt("Hello no.:" + QString::number(++i)); } -
In Qt5 I think you have to step through all the QWidgets and look for a HWND match, like this:
QWidget *myWidget = nullptr; HWND hwnd; for (auto w : findChildren<QWidget*>()) if (hwnd == (HWND) w->winId()) myWidget = w;@hskoglund
Start with C++ in Qt, emit a signal from there into IE11,Can it be implemented in QT4?QTimer::singleShot(value * 1000,[this] { signalFromQt("Hello no.:" + QString::number(++i)); }); -
@hskoglund
Start with C++ in Qt, emit a signal from there into IE11,Can it be implemented in QT4?QTimer::singleShot(value * 1000,[this] { signalFromQt("Hello no.:" + QString::number(++i)); });