LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

How to load 2 CVI panels as child window to a parent window created by VC++?

Hello, I want to load 2 CVI panels as child window to a main window, which is created by VC++.

the CVI panel is in a dll file(created by LabCVI). 

 

the Load child panel routine is something like following,

 

int __stdcall RunDLLUI (int* hParent )
{
int hpanel;
HWND hWnd;

if ((hpanel = LoadPanelEx (0, "guidlluir.uir", PANEL, __CVIUserHInst)) < 0)
return 0;

// set parent
if ( hParent != 0 )
{
GetPanelAttribute (hpanel, ATTR_SYSTEM_WINDOW_HANDLE, (int *)&hWnd);
SetParent( hWnd, (HWND)hParent);
}

DisplayPanel (hpanel);
// RunUserInterface ();

return 1;
}

 

The problem is, if I call  RunUserInterface (), then no window shown, it is, I think, that this routine blocks both the other panel to be created and the main window to be shown.  but if I don't call it, the 2 child windows won't response mouse event. seems no message dispatching for them.

 

so how can I get what I want, thx a loooooooooooooooooooooooot.

 

 

0 Kudos
Message 1 of 1
(4,053 Views)