|
|||
|
Hi to SWFKit team
I wonder if you would please test the ActiveX control "Active Sound Recorder" from MultiMediaSoft to see whether this control can be used as an ActiveXObject in SWFKit. They have a free-trial version of the control available for download from <http://www.activesoundrecorder.com/> Thanks Rob |
|
|||
|
Thanks - that tip helped and I've now got the Active Sound Recorder control recording and playing back sounds. But now a further question.
ActiveSoundRecorder includes a number of graphic objects to visualise recording/playing sounds such as a VUMeter. These graphic objects all have a Create() method eg rec.activex.VUMeter.Create(hWndTarget as OLE_HANDLE) Being graphical objects, they need to be associated to an existing window that will be used as a surface for the graphic rendering. If I place such an object on the main window ie using getMainWnd().handle as the target window, the object fully (and automatically) occupies the whole main window. I can place them one at a time on rec.window.handle (and size and locate that one appropriately), but I'd like to use more than one of these graphic controls at once. Can you suggest how I could create additional windows for this purpose? Thanks Rob |
|
|||
|
Hi
Yes - this works! I can now open a Active Sound Recorder graphic object on myform.window.handle. The next thing is to work out how to place a (non-draggable) form at a specific location on the main window so that it will appear to be a part of that window. Do you have some code example of how to locate a specific location on the main window? And the modeless form doesn't automatically resize if the main window is resized - again how would I try to achieve this? Thanks ROb |
|
|||
|
A form is cannot be embedded in the main window. If you want to create an embedded window, you would have to call the windows api directly
Code:
dllimport "user32.dll" stdcall int CreateWindowExA(unsigned int, String, String, unsigned int, int, int, int, int, long, long, long, long) as createWindow; dllimport "kernel32.dll" stdcall int GetModuleHandleA(String) as getModHandle; WS_VISIBLE = 0x10000000; WS_CHILD = 0x40000000; var handle = createWindow(0, "Static", "", WS_VISIBLE | WS_CHILD, 0, 0, 300, 300, FlashPlayer.window.handle, 0, getModHandle(null), 0); var child = new Window(handle); child.caption = "This is a child window"; |
|
|||
|
To change the place of the child window, you can handle the "onSize" event of the main window, and call the "move" method to place the child window in the event handler.
|
|
|||
|
Thanks SWFKit!
This solution works, and I thank you for the great support, and an amazing program. It seems that almost any DLL/OCX integrations are possible! My only criticismof SWFKit is that the documentation is a not complete enough. There should be a working example or two for every FFish object method/property/event. I'm sure many users would agree with this. Cheers Rob |
![]() |
Was this information helpful? Yes No
| Thread Tools | |
| Display Modes | |
|
|