Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La funzionalità finestra include la possibilità di ricevere messaggi e la proprietà di un contesto di dispositivo in cui disegnare. I controlli di modifica avanzata senza finestra ricevono questa funzionalità tramite una coppia di interfacce: ITextServices e ITextHost.
Cosa è necessario sapere
Tecnologie
Prerequisiti
- C/C++
- Programmazione dell'interfaccia utente di Windows
Disposizioni
Stabilire la funzionalità della finestra
Il codice di esempio seguente illustra come creare l'host di testo e i servizi di testo.
HRESULT hr;
IUnknown* pUnk = NULL;
ITextServices* pTextServices = NULL;
// Create an instance of the application-defined object that implements the ITextHost interface.
TextHost* pTextHost = new TextHost();
if (pTextHost == NULL)
goto errorHandler;
// Create an instance of the text services object.
hr = CreateTextServices(NULL, pTextHost, &pUnk);
if (FAILED(hr))
goto errorHandler;
// Retrieve the IID_ITextServices interface identifier from Msftedit.dll.
IID* pIID_ITS = (IID*) (VOID*) GetProcAddress(hmodRichEdit, "IID_ITextServices");
// Retrieve the ITextServices interface.
hr = pUnk->QueryInterface(*pIID_ITS, (void **)&pTextServices);
if (FAILED(hr))
goto errorHandler;
Osservazioni
Il parametro hmodRichEdit nell'esempio di codice è un handle per il modulo Msftedit.dll e si presuppone che questo handle sia già stato recuperato da una chiamata alla funzione GetModuleHandle.
Esempio completo
Argomenti correlati