Good day!
I have a program, written in C++, using Qt 5.5.1 (can't switch to another version), running under Windows (7 or 10, doesn't matter).
So I have some FlashWidget, subclassed from QWebView. It loads html file, parses it and replaces %1 with appropriate path to *.swf
<object
class="flashPlayer"
width=90%
height=100%
type="application/x-shockwave-flash"
id="bridgemovie"
data="%1" >
<param name="allowScriptAccess" value="always"/>
</object>
<object
class="flashPlayer"
width=90%
height=100%
type="application/x-shockwave-flash"
id="bridgemovie"
data="%1" >
<param name="allowScriptAccess" value="always"/>
</object>
To copy to clipboard, switch view to plain text mode
SWF file has event listeners on mouse events: mouse down, up and mouse wheel
addEventListener(MouseEvent.MOUSE_WHEEL, zoom); //"zoom" is just some internal function
addEventListener(MouseEvent.MOUSE_DOWN, mouseDown1);
addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
addEventListener(MouseEvent.MOUSE_WHEEL, zoom); //"zoom" is just some internal function
addEventListener(MouseEvent.MOUSE_DOWN, mouseDown1);
addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
To copy to clipboard, switch view to plain text mode
Problem: Dragging and clicking works pretty well, but loaded SWF doesn't receive wheel events. I can't modify SWF code, only C++ and HTML parts. So, how I can natively pass mouseWheel event from JS (or, perhaps, QWebView, if allowed so) to the loaded SWF file?
P.S. I've tried loading SWF with QAxWidget, and wheelEvent is received, but there are some rendering problems, so I'm trying to repair solution with QWebView.
Bookmarks