GordonFreeman
26-05-2007, 18:06
Ho creato una mia activex in cui voglio inserire , a sua volta, un controllo activex di Windows Media Player.
Ho scritto il codice di prova seguente:
void CMyCtrl::OnLButtonDown(UINT u,CPoint point){
/* quando l'utente schiaccia il pulsante sinistro del mouse,
viene chiamato questo metodo che tenta di
inserire il controllo WMP dentro la finestra della mia activex*/
CWnd *pChild = new CWnd(); // sottofinestra in cui inserire WMP
/* rc contiene le dimensioni della sottofinestra*/
RECT rc;
GetClientRect(&rc);
pChild->CreateControl("WMPlayer.OCX.7","",WS_VISIBLE,rc,this,1234);
/* la chiamata precedente non ha alcun effetto,
il controllo non viene visualizzato*/
/*
// se invece provo a creare una normale sottofinestra senza un controllo, funziona
if(!pChild->Create(AfxRegisterWndClass(0,0,
(HBRUSH)GetStockObject(BLACK_BRUSH)),
"",WS_CHILD | WS_VISIBLE,CRect(0,0,200,200),this,1234)){
return;
}
*/
// ...
Il controllo WMPlayer.OCX.7 è installato nella mia macchina.
Ho provato a caricarlo in IE direttamente in una pagina web (con il tag <object>...) e funziona.. invece se lo carico io nel mio active x, il controllo non viene visualizzato... come mai??
e ho provato anche a caricare altri controlli, ma niente
se qualcuno mi spiega come fare a inserire uno o più controlli activex in un controllo activex, gliene sarei grato.
ciao
Ho scritto il codice di prova seguente:
void CMyCtrl::OnLButtonDown(UINT u,CPoint point){
/* quando l'utente schiaccia il pulsante sinistro del mouse,
viene chiamato questo metodo che tenta di
inserire il controllo WMP dentro la finestra della mia activex*/
CWnd *pChild = new CWnd(); // sottofinestra in cui inserire WMP
/* rc contiene le dimensioni della sottofinestra*/
RECT rc;
GetClientRect(&rc);
pChild->CreateControl("WMPlayer.OCX.7","",WS_VISIBLE,rc,this,1234);
/* la chiamata precedente non ha alcun effetto,
il controllo non viene visualizzato*/
/*
// se invece provo a creare una normale sottofinestra senza un controllo, funziona
if(!pChild->Create(AfxRegisterWndClass(0,0,
(HBRUSH)GetStockObject(BLACK_BRUSH)),
"",WS_CHILD | WS_VISIBLE,CRect(0,0,200,200),this,1234)){
return;
}
*/
// ...
Il controllo WMPlayer.OCX.7 è installato nella mia macchina.
Ho provato a caricarlo in IE direttamente in una pagina web (con il tag <object>...) e funziona.. invece se lo carico io nel mio active x, il controllo non viene visualizzato... come mai??
e ho provato anche a caricare altri controlli, ma niente
se qualcuno mi spiega come fare a inserire uno o più controlli activex in un controllo activex, gliene sarei grato.
ciao