Ho una casella div che deve apparire su un oggetto ActiveX, ma sembra che un oggetto ActiveX abbia uno z-index infinitamente alto, anche se ho impostato un indice basso . La mia casella di divisione continua a essere visualizzata sotto l'oggetto ActiveX. Qualche idea?Posizionare un div su un oggetto activeX
risposta
Dovrai posizionare un iframe trasparente sull'oggetto che vuoi coprire.
trovato this esempio traccia
Un vantaggio Windowless controlli ActiveX è che they participate in overlapping 2-D layout
Sebbene modificare il controllo per renderlo finestra non può essere pratico.
Edit:
ho trovato a sample that demonstrate this using the flash player ActiveX control. Flash può essere utilizzato in entrambe le modalità con finestre e senza finestre. Questo esempio semplifica il passaggio da una di queste all'altra e la visualizzazione di una div in sovrapposizione in ciascuna modalità.
I controlli senza finestre sono implementati in un modo che non richiede che abbiano una propria finestra. Ciò significa che nessun WindowProc e nessuna superficie di disegno dedicata.
Invece si ricevono messaggi implementando IOleInPlaceObjectWindowless e si può ottenere il contesto di disegno GDI tramite IOleInPlaceSiteWindowless.
Sembra fantastico! Sebbene dopo averlo letto, non sono ancora sicuro su come implementare un controllo ActiveX senza finestra. –
Questa era parte della risposta (rendendola trasparente non ha funzionato per me), ma ho finito con l'uso di jQuery per mostrare/nascondere un iframe con le dimensioni e la posizione esatte della casella di divisione, come mostrato nella casella di divisione o nascosto. Grazie per l'aiuto! –
Felice di essere di aiuto. È stato presentato con lo stesso problema un po 'indietro e mi ci è voluto troppo tempo per capirlo. – Laramie