Condividi tramite


Metodo IOleInPlaceSiteWindowless::SetFocus (ocidl.h)

Imposta lo stato attivo per un oggetto senza finestra attivo nell'interfaccia utente.

Sintassi

HRESULT SetFocus(
  [in] BOOL fFocus
);

Parametri

[in] fFocus

Se TRUE, imposta lo stato attivo della tastiera sull'oggetto chiamante. Se FALSE, rimuove lo stato attivo della tastiera dall'oggetto chiamante, purché l'oggetto abbia lo stato attivo.

Valore restituito

Questo metodo restituisce S_OK se lo stato attivo della tastiera è stato assegnato correttamente all'oggetto . Se questo metodo viene chiamato per rilasciare lo stato attivo, non deve avere mai esito negativo. Gli altri valori restituiti possibili includono i seguenti:

Codice restituito Descrizione
S_FALSE
Lo stato attivo della tastiera è stato negato all'oggetto.

Commenti

Un oggetto senza finestra chiama questo metodo ogni volta che un oggetto con finestra chiamerebbe la funzione SetFocus . Tramite questa chiamata, l'oggetto senza finestra ottiene lo stato attivo della tastiera e può rispondere ai messaggi della finestra. In genere, questa chiamata viene eseguita durante il processo di attivazione dell'interfaccia utente e nei metodi di notifica IOleInPlaceActiveObject::OnDocWindowActivate con TRUE e IOleInPlaceActiveObject::OnFrameWindowActivate con TRUE.

In risposta a questa chiamata, il contenitore imposta lo stato attivo di Windows sulla finestra usata per ottenere i messaggi della tastiera (in genere la finestra del contenitore) e reindirizza tutti i messaggi di tastiera successivi all'oggetto senza finestra che ha richiesto lo stato attivo.

Un oggetto senza finestra chiama anche il metodo IOleInPlaceSiteWindowless::SetFocus con il parametro fFocus impostato su FALSE per rilasciare lo stato attivo della tastiera senza assegnarlo ad altri oggetti. In questo caso, il contenitore deve chiamare la funzione SetFocus con un parametro NULL in modo che nessuna finestra abbia lo stato attivo.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ocidl.h

Vedi anche

IOleInPlaceActiveObject

IOleInPlaceSiteWindowless