Classe COlePropertyPage
Utilizzata per visualizzare le proprietà di un controllo personalizzato in un'interfaccia grafica, simile a una finestra di dialogo.
Sintassi
class AFX_NOVTABLE COlePropertyPage : public CDialog
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
COlePropertyPage::COlePropertyPage | Costruisce un oggetto COlePropertyPage . |
Metodi pubblici
Nome | Descrizione |
---|---|
COlePropertyPage::GetControlStatus | Indica se l'utente ha modificato il valore nel controllo . |
COlePropertyPage::GetObjectArray | Restituisce la matrice di oggetti da modificare dalla pagina delle proprietà. |
COlePropertyPage::GetPageSite | Restituisce un puntatore all'interfaccia della pagina delle IPropertyPageSite proprietà. |
COlePropertyPage::IgnoreApply | Determina quali controlli non abilitano il pulsante Applica. |
COlePropertyPage::IsModified | Indica se l'utente ha modificato la pagina delle proprietà. |
COlePropertyPage::OnEditProperty | Chiamato dal framework quando l'utente modifica una proprietà. |
COlePropertyPage::OnHelp | Chiamato dal framework quando l'utente richiama la Guida. |
COlePropertyPage::OnInitDialog | Chiamato dal framework quando viene inizializzata la pagina delle proprietà. |
COlePropertyPage::OnObjectsChanged | Chiamato dal framework quando viene scelto un altro controllo OLE, con nuove proprietà. |
COlePropertyPage::OnSetPageSite | Chiamato dal framework quando il frame delle proprietà fornisce il sito della pagina. |
COlePropertyPage::SetControlStatus | Imposta un flag che indica se l'utente ha modificato il valore nel controllo . |
COlePropertyPage::SetDialogResource | Imposta la risorsa della finestra di dialogo della pagina delle proprietà. |
COlePropertyPage::SetHelpInfo | Imposta il testo della Guida breve della pagina delle proprietà, il nome del file della Guida e il relativo contesto della Guida. |
COlePropertyPage::SetModifiedFlag | Imposta un flag che indica se l'utente ha modificato la pagina delle proprietà. |
COlePropertyPage::SetPageName | Imposta il nome della pagina delle proprietà (didascalia). |
Osservazioni:
Ad esempio, una pagina delle proprietà può includere un controllo di modifica che consente all'utente di visualizzare e modificare la proprietà caption del controllo.
Ogni proprietà personalizzata o di controllo stock può avere un controllo finestra di dialogo che consente all'utente del controllo di visualizzare il valore della proprietà corrente e modificare tale valore, se necessario.
Per altre informazioni sull'uso COlePropertyPage
di , vedere l'articolo Controlli ActiveX: Pagine delle proprietà.
Gerarchia di ereditarietà
COlePropertyPage
Requisiti
Intestazione: afxctl.h
COlePropertyPage::COlePropertyPage
Costruisce un oggetto COlePropertyPage
.
COlePropertyPage(
UINT idDlg,
UINT idCaption);
Parametri
idDlg
ID risorsa del modello di finestra di dialogo.
idCaption
ID risorsa della didascalia della pagina delle proprietà.
Osservazioni:
Quando si implementa una sottoclasse di COlePropertyPage
, il costruttore della sottoclasse deve usare il COlePropertyPage
costruttore per identificare la risorsa modello di dialogo in cui si basa la pagina delle proprietà e la risorsa stringa contenente la relativa didascalia.
COlePropertyPage::GetControlStatus
Determina se l'utente ha modificato il valore del controllo pagina delle proprietà con l'ID risorsa specificato.
BOOL GetControlStatus(UINT nID);
Parametri
nID
ID risorsa di un controllo pagina delle proprietà.
Valore restituito
TRUE se il valore del controllo è stato modificato; in caso contrario FALSE.
COlePropertyPage::GetObjectArray
Restituisce la matrice di oggetti da modificare dalla pagina delle proprietà.
LPDISPATCH* GetObjectArray(ULONG* pnObjects);
Parametri
pnObjects
Puntatore a un intero long senza segno che riceverà il numero di oggetti da modificare dalla pagina.
Valore restituito
Puntatore a una matrice di IDispatch
puntatori, che vengono usati per accedere alle proprietà di ogni controllo nella pagina delle proprietà. Il chiamante non deve rilasciare questi puntatori di interfaccia.
Osservazioni:
Ogni oggetto pagina delle proprietà mantiene una matrice di puntatori alle IDispatch
interfacce degli oggetti modificati dalla pagina. Questa funzione imposta l'argomento pnObjects sul numero di elementi nella matrice e restituisce un puntatore al primo elemento della matrice.
COlePropertyPage::GetPageSite
Ottiene un puntatore all'interfaccia della pagina delle IPropertyPageSite
proprietà.
LPPROPERTYPAGESITE GetPageSite();
Valore restituito
Puntatore all'interfaccia della pagina delle IPropertyPageSite
proprietà.
Osservazioni:
I controlli e i contenitori collaborano in modo che gli utenti possano esplorare e modificare le proprietà del controllo. Il controllo fornisce pagine delle proprietà, ognuna delle quali è un oggetto OLE che consente all'utente di modificare un set correlato di proprietà. Il contenitore fornisce una cornice di proprietà che visualizza le pagine delle proprietà. Per ogni pagina, il frame delle proprietà fornisce un sito di pagina che supporta l'interfaccia IPropertyPageSite
.
COlePropertyPage::IgnoreApply
Determina quali controlli non abilitano il pulsante Applica.
void IgnoreApply(UINT nID);
Parametri
nID
ID del controllo da ignorare.
Osservazioni:
Il pulsante Applica della pagina delle proprietà è abilitato solo quando i valori dei controlli pagina delle proprietà sono stati modificati. Utilizzare questa funzione per specificare i controlli che non causano l'abilitazione del pulsante Applica quando i valori cambiano.
COlePropertyPage::IsModified
Determina se l'utente ha modificato i valori nella pagina delle proprietà.
BOOL IsModified();
Valore restituito
TRUE se la pagina delle proprietà è stata modificata.
COlePropertyPage::OnEditProperty
Il framework chiama questa funzione quando deve essere modificata una proprietà specifica.
virtual BOOL OnEditProperty(DISPID dispid);
Parametri
dispid
ID dispatch della proprietà da modificare.
Valore restituito
L'implementazione predefinita restituisce FALSE. Gli override di questa funzione devono restituire TRUE.
Osservazioni:
È possibile eseguirne l'override per impostare lo stato attivo sul controllo appropriato nella pagina. L'implementazione predefinita non esegue alcuna operazione e restituisce FALSE.
COlePropertyPage::OnHelp
Il framework chiama questa funzione quando l'utente richiede assistenza online.
virtual BOOL OnHelp(LPCTSTR lpszHelpDir);
Parametri
lpszHelpDir
Directory contenente il file della Guida della pagina delle proprietà.
Valore restituito
L'implementazione predefinita restituisce FALSE.
Osservazioni:
Eseguirne l'override se la pagina delle proprietà deve eseguire qualsiasi azione speciale quando l'utente accede alla Guida. L'implementazione predefinita non esegue alcuna operazione e restituisce FALSE, che indica al framework di chiamare WinHelp.
COlePropertyPage::OnInitDialog
Il framework chiama questa funzione quando viene inizializzata la finestra di dialogo della pagina delle proprietà.
virtual BOOL OnInitDialog();
Valore restituito
L'implementazione predefinita restituisce FALSE.
Osservazioni:
Esegui l'override se è necessaria un'azione speciale quando viene inizializzata la finestra di dialogo. L'implementazione predefinita chiama CDialog::OnInitDialog
e restituisce FALSE.
COlePropertyPage::OnObjectsChanged
Chiamato dal framework quando viene scelto un altro controllo OLE, con nuove proprietà.
virtual void OnObjectsChanged();
Osservazioni:
Quando si visualizzano le proprietà di un controllo OLE nell'ambiente di sviluppo, viene utilizzata una finestra di dialogo senza modalità per visualizzare le relative pagine delle proprietà. Se è selezionato un altro controllo, è necessario visualizzare un set diverso di pagine delle proprietà per il nuovo set di proprietà. Il framework chiama questa funzione per notificare alla pagina delle proprietà la modifica.
Eseguire l'override di questa funzione per ricevere la notifica di questa azione ed eseguire azioni speciali.
COlePropertyPage::OnSetPageSite
Il framework chiama questa funzione quando il frame di proprietà fornisce il sito della pagina della pagina delle proprietà.
virtual void OnSetPageSite();
Osservazioni:
L'implementazione predefinita carica la didascalia della pagina e tenta di determinare le dimensioni della pagina dalla risorsa della finestra di dialogo. Eseguire l'override di questa funzione se la pagina delle proprietà richiede un'ulteriore azione; l'override deve chiamare l'implementazione della classe base.
COlePropertyPage::SetControlStatus
Modifica lo stato di un controllo pagina delle proprietà.
BOOL SetControlStatus(
UINT nID,
BOOL bDirty);
Parametri
nID
Contiene l'ID di un controllo pagina delle proprietà.
bDirty
Specifica se un campo della pagina delle proprietà è stato modificato. Impostare su TRUE se il campo è stato modificato, FALSE se non è stato modificato.
Valore restituito
TRUE, se il controllo specificato è stato impostato; in caso contrario FALSE.
Osservazioni:
Se lo stato di un controllo pagina delle proprietà è dirty quando la pagina delle proprietà viene chiusa o viene scelto il pulsante Applica, la proprietà del controllo verrà aggiornata con il valore appropriato.
COlePropertyPage::SetDialogResource
Imposta la risorsa della finestra di dialogo della pagina delle proprietà.
void SetDialogResource(HGLOBAL hDialog);
Parametri
hDialog
Handle per la risorsa della finestra di dialogo della pagina delle proprietà.
COlePropertyPage::SetHelpInfo
Specifica le informazioni sulla descrizione comando, il nome file della Guida e il contesto della Guida per la pagina delle proprietà.
void SetHelpInfo(
LPCTSTR lpszDocString,
LPCTSTR lpszHelpFile = NULL,
DWORD dwHelpContext = 0);
Parametri
lpszDocString
Stringa contenente brevi informazioni della Guida per la visualizzazione in una barra di stato o in un'altra posizione.
lpszHelpFile
Nome del file della Guida della pagina delle proprietà.
dwHelpContext
Contesto della Guida per la pagina delle proprietà.
COlePropertyPage::SetModifiedFlag
Indica se l'utente ha modificato la pagina delle proprietà.
void SetModifiedFlag(BOOL bModified = TRUE);
Parametri
bModified
Specifica il nuovo valore per il flag modificato della pagina delle proprietà.
COlePropertyPage::SetPageName
Imposta il nome della pagina delle proprietà, che in genere verrà visualizzato nella scheda della pagina.
void SetPageName(LPCTSTR lpszPageName);
Parametri
lpszPageName
Puntatore a una stringa contenente il nome della pagina delle proprietà.
Vedi anche
Esempio MFC CIRC3
Testhelp di esempio MFC
Classe CDialog
Grafico della gerarchia
Classe CDialog