Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
CWinAppEx hanterar programtillståndet, sparar tillståndet i registret, läser in tillståndet från registret, initierar programhanterare och tillhandahåller länkar till samma programhanterare.
Mer information finns i källkoden som finns i mappen mfc i Visual Studio-installationen. Till exempel %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc.
Syntax
class CWinAppEx : public CWinApp
Medlemmar
Offentliga konstruktorer
| Namn | Beskrivning |
|---|---|
CWinAppEx::CWinAppEx |
Konstruerar ett CWinAppEx objekt. |
Offentliga metoder
| Namn | Beskrivning |
|---|---|
CWinAppEx::CleanState |
Tar bort information om programmet från Windows-registret. |
CWinAppEx::EnableLoadWindowPlacement |
Anger om programmet ska läsa in den ursprungliga storleken och platsen för huvudramsfönstret från registret. |
CWinAppEx::EnableTearOffMenus |
Aktiverar avrivningsmenyer för programmet. |
CWinAppEx::EnableUserTools |
Gör att användaren kan skapa anpassade menykommandon i programmet. |
CWinAppEx::ExitInstance |
Anropas av ramverket inifrån funktionen Run medlem för att avsluta den här instansen av programmet. (Åsidosätter CWinApp::ExitInstance.) |
CWinAppEx::GetBinary |
Läser binära data som är associerade med det angivna registervärdet. |
CWinAppEx::GetContextMenuManager |
Returnerar en pekare till det globala CContextMenuManager-objektet. |
CWinAppEx::GetDataVersion |
|
CWinAppEx::GetDataVersionMajor |
Returnerar huvudversionen av programmet som sparats i Windows-registret. |
CWinAppEx::GetDataVersionMinor |
Returnerar den delversion av programmet som sparats i Windows-registret. |
CWinAppEx::GetInt |
Läser numeriska data som är associerade med det angivna värdet från registret. |
CWinAppEx::GetKeyboardManager |
Returnerar en pekare till det globala CKeyboardManager-objektet. |
CWinAppEx::GetMouseManager |
Returnerar en pekare till det globala CMouseManager-objektet. |
CWinAppEx::GetObject |
Läser CObject-härledda data som är associerade med det angivna värdet från registret. |
CWinAppEx::GetRegSectionPath |
Returnerar en sträng som är sökvägen till en registernyckel. Den här sökvägen sammanfogar den angivna relativa sökvägen med programsökvägen. |
CWinAppEx::GetRegistryBase |
Returnerar registersökvägen för programmet. |
CWinAppEx::GetSectionBinary |
Läser binära data som är associerade med den angivna nyckeln och värdet från registret. |
CWinAppEx::GetSectionInt |
Läser numeriska data från registret som är associerat med den angivna nyckeln och värdet. |
CWinAppEx::GetSectionObject |
Läser CObject data som är associerade med den angivna nyckeln och värdet från registret. |
CWinAppEx::GetSectionString |
Läser strängdata som är associerade med den angivna nyckeln och värdet från registret. |
CWinAppEx::GetShellManager |
Returnerar en pekare till det globala CShellManager-objektet. |
CWinAppEx::GetString |
Läser strängdata som är associerade med det angivna värdet från registret. |
CWinAppEx::GetTooltipManager |
Returnerar en pekare till det globala CTooltipManager-objektet. |
CWinAppEx::GetUserToolsManager |
Returnerar en pekare till det globala CUserToolsManager-objektet. |
CWinAppEx::InitContextMenuManager |
Initierar CContextMenuManager-objektet. |
CWinAppEx::InitKeyboardManager |
Initierar CKeyboardManager-objektet. |
CWinAppEx::InitMouseManager |
Initierar CMouseManager-objektet. |
CWinAppEx::InitShellManager |
Initierar klassen CShellManager |
CWinAppEx::InitTooltipManager |
Initierar klassen CTooltipManager. |
CWinAppEx::IsResourceSmartUpdate |
|
CWinAppEx::IsStateExists |
Anger om den angivna nyckeln finns i registret. |
CWinAppEx::LoadState |
Läser in programtillståndet från registret. |
CWinAppEx::OnAppContextHelp |
Anropas av ramverket när användaren begär kontexthjälp för dialogrutan Anpassning. |
CWinAppEx::OnViewDoubleClick |
Anropar det användardefinierade kommandot när användaren dubbelklickar var som helst i programmet. |
CWinAppEx::OnWorkspaceIdle |
|
CWinAppEx::SaveState |
Skriver tillståndet för programramverket till Windows-registret. |
CWinAppEx::SetRegistryBase |
Anger sökvägen till standardregisternyckeln. Den här nyckeln fungerar som en rot för alla efterföljande registeranrop. |
CWinAppEx::ShowPopupMenu |
Visar en popup-meny. |
CWinAppEx::WriteBinary |
Skriver binära data till det angivna registervärdet. |
CWinAppEx::WriteInt |
Skriver numeriska data till det angivna registervärdet. |
CWinAppEx::WriteObject |
Skriver data som härleds från CObject Class till det angivna registervärdet. |
CWinAppEx::WriteSectionBinary |
Skriver binära data till ett värde för den angivna registernyckeln. |
CWinAppEx::WriteSectionInt |
Skriver numeriska data till ett värde för den angivna registernyckeln. |
CWinAppEx::WriteSectionObject |
Skriver data som härleds från klassen CObject till ett värde för den angivna registernyckeln. |
CWinAppEx::WriteSectionString |
Skriver strängdata till ett värde för den angivna registernyckeln. |
CWinAppEx::WriteString |
Skriver strängdata till det angivna registervärdet. |
Skyddade metoder
| Namn | Beskrivning |
|---|---|
CWinAppEx::LoadCustomState |
Anropas av ramverket när programtillståndet har lästs in. |
CWinAppEx::LoadWindowPlacement |
Anropas av ramverket när det läser in programmets storlek och plats från registret. De inlästa data innehåller storleken och platsen för huvudramen när programmet senast stängdes. |
CWinAppEx::OnClosingMainFrame |
Anropas av ramverket när ett huvudramfönster bearbetar WM_CLOSE. |
CWinAppEx::PreLoadState |
Anropas av ramverket omedelbart innan programtillståndet läses in. |
CWinAppEx::PreSaveState |
Anropas av ramverket omedelbart innan programtillståndet sparas. |
CWinAppEx::ReloadWindowPlacement |
Läser in storlek och plats för det angivna fönstret igen från registret |
CWinAppEx::SaveCustomState |
Anropas av ramverket när det har skrivit programtillståndet till registret. |
CWinAppEx::StoreWindowPlacement |
Anropas av ramverket för att skriva storleken och platsen för huvudramen till registret. |
Datamedlemmar
| Namn | Beskrivning |
|---|---|
CWinAppEx::m_bForceImageReset |
Anger om ramverket ska återställa alla verktygsfältsbilder när ramfönstret som innehåller verktygsfältet läses in. |
Anmärkningar
En stor del av funktionerna i MFC-ramverket beror på CWinAppEx-klassen. Du kan införliva CWinAppEx-klassen i ditt program på något av två sätt:
Skapa en
CWinAppEx-klass i huvudtråden.Härled huvudprogramklassen från
CWinAppEx.
När du har införlivat CWinAppEx i ditt program kan du initiera någon av programhanterare. Innan du använder en programhanterare måste du initiera den genom att anropa lämplig initieringsmetod. Om du vill hämta en pekare till en specifik chef anropar du den associerade get-metoden. Klassen CWinAppEx hanterar följande programhanterare: CMouseManager Class, CContextMenuManager Class, CKeyboardManager Class, CUserToolsManager Classoch CMenuTearOffManager Class.
Arvshierarki
Krav
rubrik:afxwinappex.h
CWinAppEx::CleanState
Tar bort all information om programmet från Windows-registret.
virtual BOOL CleanState(LPCTSTR lpszSectionName=NULL);
Parametrar
lpszSectionName
[i] En sträng som innehåller en sökväg för en registernyckel.
Returvärde
Nonzero om metoden lyckades; annars 0.
Anmärkningar
Den här metoden rensar programdata från ett specifikt avsnitt i registret. Du kan ange det avsnitt som ska rensas med hjälp av parametern lpszSectionName. Om lpszSectionName är NULLanvänder den här metoden standardregistersökvägen som lagras i CWinAppEx-objektet. Om du vill hämta standardsökvägen för registret använder du CWinAppEx::GetRegistryBase.
CWinAppEx::CWinAppEx
Konstruerar ett CWinAppEx objekt.
CWinAppEx(BOOL bResourceSmartUpdate = FALSE);
Parametrar
bResourceSmartUpdate
[i] En boolesk parameter som anger om arbetsyteobjektet ska identifiera och hantera resursuppdateringar.
Anmärkningar
Klassen CWinAppEx har initieringsmetoder, innehåller funktioner för att spara och läsa in programinformation i registret och kontrollerar globala programinställningar. Du kan också använda globala chefer som CKeyboardManager Class och CUserToolsManager Class. Varje program kan bara ha en instans av klassen CWinAppEx.
CWinAppEx::EnableLoadWindowPlacement
Anger om programmet ska läsa in den ursprungliga storleken och platsen för huvudramsfönstret från registret.
void EnableLoadWindowPlacement(BOOL bEnable = TRUE);
Parametrar
bEnable
[i] Anger om programmet läser in den ursprungliga storleken och platsen för huvudramsfönstret från registret.
Anmärkningar
Som standard läses huvudramens storlek och plats in från registret tillsammans med andra programinställningar. Detta inträffar under CWinAppEx::LoadState. Om du inte vill läsa in den inledande fönsterplaceringen från registret anropar du den här metoden med bEnable inställd på FALSE.
CWinAppEx::EnableTearOffMenus
Skapar och initierar ett CMenuTearOffManager objekt.
BOOL EnableTearOffMenus(
LPCTSTR lpszRegEntry,
const UINT uiCmdFirst,
const UINT uiCmdLast);
Parametrar
lpszRegEntry
[i] En sträng som innehåller sökvägen till en registernyckel. Programmet använder den här registernyckeln för att lagra information för avrivningsmenyerna.
uiCmdFirst
[i] Det första avstänga meny-ID:t.
uiCmdLast
[i] Det sista avstänga meny-ID:t.
Returvärde
TRUE om CMenuTearOffManager har skapats och initierats. FALSE om ett fel inträffar eller om CMenuTearOffManager redan finns.
Anmärkningar
Använd den här funktionen för att aktivera avrivningsmenyer i programmet. Du bör anropa den här funktionen från InitInstance.
CWinAppEx::EnableUserTools
Gör att användaren kan skapa anpassade menykommandon som minskar tangenttryckningar i ditt program. Den här metoden skapar ett CUserToolsManager objekt.
BOOL EnableUserTools(
const UINT uiCmdToolsDummy,
const UINT uiCmdFirst,
const UINT uiCmdLast,
CRuntimeClass* pToolRTC = RUNTIME_CLASS(CUserTool),
UINT uArgMenuID = 0,
UINT uInitDirMenuID = 0);
Parametrar
uiCmdToolsDummy
[i] Ett osignerat heltal som ramverket använder som platshållare för kommando-ID:t på användarverktygsmenyn.
uiCmdFirst
[i] Kommando-ID för det första användarverktygskommandot.
uiCmdLast
[i] Kommando-ID:t för det senaste användarverktygskommandot.
pToolRTC
[i] En klass som CUserToolsManager-objektet använder för att skapa nya användarverktyg.
uArgMenuID
[i] Argumentmenyns ID.
uInitDirMenuID
[i] Meny-ID:t för den första verktygskatalogen.
Returvärde
TRUE om metoden skapar och initierar ett CUserToolsManager objekt. FALSE om metoden misslyckas eller om det redan finns ett CUserToolsManager objekt.
Anmärkningar
När du aktiverar användardefinierade verktyg stöder ramverket automatiskt en dynamisk meny som kan utökas under anpassningen. Ramverket associerar varje nytt objekt med ett externt kommando. Ramverket anropar dessa kommandon när användaren väljer lämpligt objekt från menyn Verktyg.
Varje gång användaren lägger till ett nytt objekt skapar ramverket ett nytt objekt. Klasstypen för det nya objektet definieras av pToolRTC. Klasstypen pToolRTC måste härledas från CUserTool Class.
Mer information om användarverktyg och hur du införlivar dem i ditt program finns i användardefinierade verktyg.
CWinAppEx::ExitInstance
virtual int ExitInstance();
Returvärde
Anmärkningar
CWinAppEx::GetBinary
Läser binära data från en angiven registernyckel.
BOOL GetBinary(
LPCTSTR lpszEntry,
LPBYTE* ppData,
UINT* pBytes);
Parametrar
lpszEntry
[i] En sträng som innehåller namnet på en registernyckel.
ppData
[ut] En pekare till bufferten som metoden fyller med binära data.
pBytes
[ut] En pekare till ett osignerat heltal som metoden använder för att skriva antalet lästa byte.
Returvärde
TRUE om det lyckas. FALSE annars.
Anmärkningar
Den här metoden läser binära data som skrivits till registret. Om du vill skriva data till registret använder du metoderna CWinAppEx::WriteBinary och CWinAppEx::WriteSectionBinary.
Parametern lpszEntry är namnet på en registerpost som finns under standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::GetContextMenuManager
Returnerar en pekare till det globala CContextMenuManager-objektet.
CContextMenuManager* GetContextMenuManager();
Returvärde
En pekare till det globala CContextMenuManager-objektet.
Anmärkningar
Om det CContextMenuManager objektet inte initieras anropar den här funktionen CWinAppEx::InitContextMenuManager innan det returnerar en pekare.
CWinAppEx::GetDataVersion
int GetDataVersion() const;
Returvärde
Anmärkningar
CWinAppEx::GetDataVersionMajor
Returnerar huvudversionen av programmet som sparas i Windows-registret när du anropar CWinAppEx::SaveState.
int GetDataVersionMajor() const;
Returvärde
Ett heltalsvärde som innehåller huvudversionsnumret.
CWinAppEx::GetDataVersionMinor
Returnerar delversionen av programmet som sparas i Windows-registret när du anropar CWinAppEx::SaveState.
int GetDataVersionMinor() const;
Returvärde
Ett heltalsvärde som innehåller delversionsnumret.
CWinAppEx::GetInt
Läser heltalsdata från en angiven registernyckel.
int GetInt(
LPCTSTR lpszEntry,
int nDefault = 0);
Parametrar
lpszEntry
[i] En sträng som innehåller namnet på en registerpost.
nDefault
[i] Standardvärdet som metoden returnerar om den angivna registerposten inte finns.
Returvärde
Registerdata om metoden lyckades. annars nDefault.
Anmärkningar
Den här metoden läser heltalsdata från registret. Om det inte finns några heltalsdata som är associerade med registernyckeln som anges av lpszEntryreturnerar den här metoden nDefault. Om du vill skriva data till registret använder du metoderna CWinAppEx::WriteSectionInt och CWinAppEx::WriteInt.
Parametern lpszEntry är namnet på en registerpost som finns under standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::GetKeyboardManager
Returnerar en pekare till det globala CKeyboardManager-objektet.
CKeyboardManager* GetKeyboardManager();
Returvärde
En pekare till det globala CKeyboardManager-objektet.
Anmärkningar
Om tangentbordshanteraren inte initieras anropar den här funktionen CWinAppEx::InitKeyboardManager innan den returnerar en pekare.
CWinAppEx::GetMouseManager
Returnerar en pekare till det globala CMouseManager-objektet.
CMouseManager* GetMouseManager();
Returvärde
En pekare till det globala CMouseManager-objektet.
Anmärkningar
Om mushanteraren inte initieras anropar den här funktionen CWinAppEx::InitMouseManager innan den returnerar en pekare.
CWinAppEx::GetObject
Läser CObject-dervied data från registret.
BOOL GetObject(
LPCTSTR lpszEntry,
CObject& obj);
Parametrar
lpszEntry
[i] En sträng som innehåller den relativa sökvägen för en registerpost.
obj
[ut] En referens till en CObject. Metoden använder den här referensen för att lagra registerdata.
Returvärde
Nonzero om metoden lyckades; annars 0.
Anmärkningar
Den här metoden läser data från registret som härleds från CObject. Om du vill skriva CObject data till registret använder du antingen CWinAppEx::WriteObject eller CWinAppEx::WriteSectionObject.
Parametern lpszEntry är namnet på en registerpost som finns under standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::GetRegistryBase
Hämtar standardregistersökvägen för programmet.
LPCTSTR GetRegistryBase();
Returvärde
En sträng som innehåller sökvägen till standardregisterplatsen.
Anmärkningar
Alla metoder i CWinAppEx Class som har åtkomst till registret startar på en standardplats. Använd den här metoden för att hämta en sökväg till standardregisterplatsen. Använd CWinAppEx::SetRegistryBase för att ändra standardregisterplatsen.
CWinAppEx::GetRegSectionPath
Skapar och returnerar den absoluta sökvägen för en registernyckel.
CString GetRegSectionPath(LPCTSTR szSectionAdd = _T(""));
Parametrar
szSectionAdd
[i] En sträng som innehåller den relativa sökvägen för en registernyckel.
Returvärde
En CString som innehåller den absoluta sökvägen för en registernyckel.
Anmärkningar
Den här metoden definierar registernyckelns absoluta sökväg genom att lägga till den relativa sökvägen i szSectionAdd till standardregisterplatsen för ditt program. Om du vill hämta standardregisternyckeln använder du metoden CWinAppEx::GetRegistryBase.
CWinAppEx::GetSectionBinary
Läser binära data från registret.
BOOL GetSectionBinary(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
LPBYTE* ppData,
UINT* pBytes);
Parametrar
lpszSubSection
[i] En sträng som innehåller den relativa sökvägen för en registernyckel.
lpszEntry
[i] En sträng som innehåller värdet som ska läsas.
ppData
[ut] En pekare till bufferten där metoden lagrar data.
pBytes
[ut] En pekare till ett osignerat heltal. Metoden skriver storleken på ppData till den här parametern.
Returvärde
TRUE om det lyckas. annars FALSE.
Anmärkningar
Den här metoden läser binära data som skrivs till registret med hjälp av metoderna CWinAppEx::WriteBinary och CWinAppEx::WriteSectionBinary.
Parametern lpszSubSection är inte en absolut sökväg för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::GetSectionInt
Läser heltalsdata från registret.
int GetSectionInt(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
int nDefault = 0);
Parametrar
lpszSubSection
[i] En sträng som innehåller den relativa sökvägen för en registernyckel.
lpszEntry
[i] En sträng som innehåller värdet som ska läsas.
nDefault
[i] Standardvärdet som returneras om det angivna värdet inte finns.
Returvärde
Heltalsdata som lagras i det angivna registervärdet. nDefault om data inte finns.
Anmärkningar
Använd metoderna CWinAppEx::WriteInt och CWinAppEx::WriteSectionInt för att skriva heltalsdata till registret.
Parametern lpszSubSection är inte en absolut sökväg för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::GetSectionObject
Läser CObject registerdata från registret.
BOOL GetSectionObject(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
CObject& obj);
Parametrar
lpszSubSection
[i] En sträng som innehåller den relativa sökvägen för en registernyckel.
lpszEntry
[i] En sträng som innehåller värdet som ska läsas.
obj
[ut] En referens till en CObject. Metoden använder den här CObject för att lagra registerdata.
Returvärde
Nonzero om det lyckas; annars 0.
Anmärkningar
Den här metoden läser data från registret. Dataläsningen är CObject data eller data för en klass som härleds från CObject. Om du vill skriva CObject data till registret använder du antingen CWinAppEx::WriteObject eller CWinAppEx::WriteSectionObject.
Parametern lpszSubSection är inte en absolut sökväg för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::GetSectionString
Läser strängdata från registret.
CString GetSectionString(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
LPCTSTR lpszDefault = _T(""));
Parametrar
lpszSubSection
[i] En sträng som innehåller den relativa sökvägen för en registernyckel.
lpszEntry
[i] En sträng som innehåller värdet som ska läsas.
lpszDefault
[i] Standardvärdet som returneras om det angivna värdet inte finns.
Returvärde
Strängdata som lagras i det angivna registervärdet om data finns. annars lpszDefault.
Anmärkningar
Den här metoden läser strängdata som skrivits till registret. Använd CWinAppEx::WriteString och CWinAppEx::WriteSectionString för att skriva strängdata till registret.
Parametern lpszSubSection är inte en absolut sökväg för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::GetShellManager
Returnerar en pekare till det globala CShellManager-objektet.
CShellManager* GetShellManager();
Returvärde
En pekare till det globala CShellManager-objektet.
Anmärkningar
Om det CShellManager objektet inte initieras anropar den här funktionen CWinAppEx::InitShellManager innan det returnerar en pekare.
CWinAppEx::GetString
Läser strängdata från en angiven registernyckel.
CString GetString(
LPCTSTR lpszEntry,
LPCTSTR lpzDefault= _T(""));
Parametrar
lpszEntry
[i] En sträng som innehåller namnet på en registernyckel
lpzDefault
[i] Standardvärdet som metoden returnerar om den angivna registerposten inte finns.
Returvärde
Strängdata som lagras i registret om de lyckas. lpszDefault annars.
Anmärkningar
Den här metoden läser strängdata som skrivits till registret. Om du vill skriva data till registret använder du metoderna CWinAppEx::WriteString eller CWinAppEx::WriteSectionString.
Parametern lpszEntry är namnet på en registerpost som finns under standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::GetTooltipManager
Returnerar en pekare till det globala CTooltipManager-objektet.
CTooltipManager* GetTooltipManager();
Returvärde
En pekare till det globala CTooltipManager-objektet.
Anmärkningar
Om det CTooltipManager objektet inte initieras anropar den här funktionen CWinAppEx::InitTooltipManager innan det returnerar en pekare.
CWinAppEx::GetUserToolsManager
Returnerar en pekare till det globala CUserToolsManager-objektet.
CUserToolsManager* GetUserToolsManager();
Returvärde
En pekare till det globala CUserToolsManager objektet. NULL om hantering av användarverktyg inte är aktiverat för programmet.
Anmärkningar
Innan du hämtar en pekare till CUserToolsManager-objektet måste du initiera chefen genom att anropa CWinAppEx::EnableUserTools.
CWinAppEx::InitContextMenuManager
Initierar CContextMenuManager-objektet.
BOOL InitContextMenuManager();
Returvärde
Nonzero om metoden skapar objektet CContextMenuManager; 0 om det CContextMenuManager objektet redan finns.
Anmärkningar
Om du anropar CWinAppEx::GetContextMenuManageranropar standardimplementeringen av metoden InitContextMenuManager.
Om ditt program redan har en snabbmenyhanterare och du anropar InitContextMenuManagerfår programmet ett ASSERT fel. Därför bör du inte anropa InitContextMenuManager om du skapar ett CContextMenuManager objekt direkt. Om du inte använder en anpassad CContextMenuManagerbör du använda GetContextMenuManager för att skapa ett CContextMenuManager objekt.
CWinAppEx::InitKeyboardManager
Initierar CKeyboardManager-objektet.
BOOL InitKeyboardManager();
Returvärde
Nonzero om metoden skapar objektet CKeyboardManager; 0 om det CKeyboardManager objektet redan finns.
Anmärkningar
Om du anropar CWinAppEx::GetKeyboardManageranropar standardimplementeringen av metoden InitKeyboardManager.
Om programmet redan har en tangentbordshanterare och du anropar InitKeyboardManagerfår programmet ett ASSERT fel. Därför bör du inte anropa InitKeyboardManager om du skapar ett CKeyboardManager objekt direkt. Om du inte använder en anpassad CKeyboardManagerbör du använda GetKeyboardManager för att skapa ett CKeyboardManager objekt.
CWinAppEx::InitMouseManager
Initierar CMouseManager-objektet.
BOOL InitMouseManager();
Returvärde
Nonzero om metoden skapar objektet CMouseManager; 0 om det CMouseManager objektet redan finns.
Anmärkningar
Om du anropar CWinAppEx::GetMouseManageranropar standardimplementeringen av metoden InitMouseManager.
Om programmet redan har en mushanterare och du anropar InitMouseManagerfår programmet ett ASSERT fel. Därför bör du inte anropa InitMouseManager om du skapar ett CMouseManager objekt direkt. Om du inte använder en anpassad CMouseManagerbör du använda GetMouseManager för att skapa ett CMouseManager objekt.
CWinAppEx::InitShellManager
Initierar CShellManager-objektet.
BOOL InitShellManager();
Returvärde
Nonzero om metoden skapar objektet CShellManager; 0 om det CShellManager objektet redan finns.
Anmärkningar
Om du anropar CWinAppEx::GetShellManageranropar standardimplementeringen av metoden InitShellManager.
Om ditt program redan har en gränssnittshanterare och du anropar InitShellManagergenererar programmet ett ASSERT fel. Anropa därför inte InitShellManager om du skapar ett CShellManager objekt direkt. Om du inte använder en anpassad CShellManageranvänder du GetShellManager för att skapa ett CShellManager objekt.
CWinAppEx::InitTooltipManager
Initierar CTooltipManager-objektet.
BOOL InitTooltipManager();
Returvärde
Nonzero om metoden skapar objektet CTooltipManager; 0 om det CTooltipManager objektet redan finns.
Anmärkningar
Om du anropar CWinAppEx::GetTooltipManageranropar standardimplementeringen av metoden InitTooltipManager.
Om programmet redan har en knappbeskrivningshanterare och du anropar InitTooltipManagerfår programmet ett ASSERT fel. Därför bör du inte anropa InitTooltipManager om du skapar ett CTooltipManager objekt direkt. Om du inte använder en anpassad CTooltipManagerbör du använda GetTooltipManager för att skapa ett CTooltipManager objekt.
CWinAppEx::IsResourceSmartUpdate
BOOL IsResourceSmartUpdate() const;
Returvärde
Anmärkningar
CWinAppEx::IsStateExists
Anger om den angivna nyckeln finns i registret.
BOOL IsStateExists(LPCTSTR lpszSectionName);
Parametrar
lpszSectionName
[i] En sträng som innehåller en sökväg för en registernyckel.
Returvärde
Nonzero om nyckeln finns i registret; annars 0.
CWinAppEx::LoadCustomState
Ramverket anropar den här metoden efter att programmets tillstånd har lästs in från registret.
virtual void LoadCustomState();
Anmärkningar
Åsidosätt den här metoden om du vill utföra någon bearbetning när programmet har läst in tillståndet från registret. Som standard gör den här metoden ingenting.
För att kunna läsa in information om anpassat tillstånd från registret måste informationen först sparas med hjälp av CWinAppEx::SaveCustomState.
CWinAppEx::LoadState
Läser programtillståndet från Windows-registret.
BOOL LoadState(
CMDIFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
BOOL LoadState(
CFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
BOOL LoadState(
COleIPFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
virtual BOOL LoadState(
LPCTSTR lpszSectionName = NULL,
CFrameImpl* pFrameImpl = NULL);
Parametrar
pFrame
[i] En pekare till ett ramfönsterobjekt. Metoden tillämpar tillståndsinformationen i registret på det här ramfönstret.
lpszSectionName
[i] En sträng som innehåller den relativa sökvägen för en registernyckel.
pFrameImpl
[i] En pekare till ett CFrameImpl objekt. Metoden tillämpar tillståndsinformationen i registret på det här ramfönstret.
Returvärde
Nonzero om det lyckas; 0 annars.
Anmärkningar
Den här metoden läser in programmets tillstånd och eventuell tillståndsinformation för ett ramfönster. Den inlästa informationen för ramfönstret tillämpas på det angivna ramfönstret. Om du inte anger ett ramfönster läses endast programtillståndsinformationen in. Programinformationen innehåller tillståndet för CMouseManager Class, CContextMenuManager Class, CKeyboardManager Classoch CUserToolsManager Class.
Standardimplementeringen av CFrameImpl::OnLoadFrame anropar LoadState.
Parametern lpszSectionName är inte den absoluta sökvägen för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::LoadWindowPlacement
Anropas av ramverket när det läser in storleken och platsen för huvudramfönstret från registret.
virtual BOOL LoadWindowPlacement(
CRect& rectNormalPosition,
int& nFlags,
int& nShowCmd);
Parametrar
rectNormalPosition
[ut] En rektangel som innehåller koordinaterna för huvudramsfönstret när den är i återställd position.
nFlags
[ut] Flaggor som styr positionen för det minimerade fönstret och hur operativsystemet växlar mellan ett minimerat fönster och ett återställt fönster.
nShowCmd
[ut] Ett heltal som anger visningstillståndet för fönstret. Mer information om möjliga värden finns i CWnd::ShowWindow.
Returvärde
Nonzero om det lyckas; 0 annars.
Anmärkningar
Som standard läser MFC automatiskt in den tidigare positionen och tillståndet för huvudramsfönstret när programmet startar. Mer information om hur den här informationen lagras i registret finns i CWinAppEx::StoreWindowPlacement.
Åsidosätt den här metoden om du vill läsa in ytterligare information om huvudramsfönstret.
CWinAppEx::m_bForceImageReset
Anger om ramverket återställer alla verktygsfältsbilder när det läser in ramfönstret som innehåller verktygsfältet igen.
BOOL m_bForceImageReset;
Anmärkningar
Den m_bForceImageReset datamedlemmen är en skyddad variabel.
CWinAppEx::OnAppContextHelp
Ramverket anropar den här metoden när användaren begär kontexthjälp för dialogrutan Anpassning.
virtual void OnAppContextHelp(
CWnd* pWndControl,
const DWORD dwHelpIDArray[]);
Parametrar
pWndControl
[i] En pekare till ett fönsterobjekt som användaren anropade kontexten för.
dwHelpIDArray[]
[i] Ett reserverat värde.
Anmärkningar
Den här metoden är för närvarande reserverad för framtida användning. Standardimplementeringen gör ingenting och anropas för närvarande inte av ramverket.
CWinAppEx::OnClosingMainFrame
Ramverket anropar den här metoden när ett ramfönster bearbetar WM_CLOSE.
virtual void OnClosingMainFrame(CFrameImpl* pFrameImpl);
Parametrar
pFrameImpl
[i] En pekare till ett CFrameImpl objekt.
Anmärkningar
Standardimplementeringen av den här metoden sparar tillståndet för pFrameImpl.
CWinAppEx::OnViewDoubleClick
Anropar det användardefinierade kommando som är associerat med en vy när användaren dubbelklickar var som helst i vyn.
virtual BOOL OnViewDoubleClick(
CWnd* pWnd,
int iViewId);
Parametrar
pWnd
[i] En pekare till ett objekt som härleds från CView Class.
iViewId
[i] Vy-ID:t.
Returvärde
TRUE om ramverket hittar ett kommando; annars FALSE.
Anmärkningar
För att stödja anpassat musbeteende måste du anropa den här funktionen när du bearbetar WM_LBUTTONDBLCLK meddelandet. Den här metoden kör kommandot som är associerat med det vy-ID som tillhandahålls av iViewId. Mer information om anpassat musbeteende finns i Anpassning av tangentbord och mus.
CWinAppEx::OnWorkspaceIdle
virtual BOOL OnWorkspaceIdle(CWnd*);
Parametrar
[i] CWnd*
Returvärde
Anmärkningar
CWinAppEx::PreLoadState
Ramverket anropar den här metoden omedelbart innan det läser in programmets tillstånd från registret.
virtual void PreLoadState();
Anmärkningar
Åsidosätt den här metoden om du vill utföra någon bearbetning omedelbart innan ramverket läser in programtillståndet.
CWinAppEx::PreSaveState
Ramverket anropar den här metoden omedelbart innan programmets tillstånd sparas.
virtual void PreSaveState();
Anmärkningar
Åsidosätt den här metoden om du vill utföra någon bearbetning omedelbart innan ramverket sparar programtillståndet.
CWinAppEx::ReloadWindowPlacement
Läser in storlek och plats för ett fönster igen från registret.
virtual BOOL ReloadWindowPlacement(CFrameWnd* pFrame);
Parametrar
pFrame
[i] En pekare till ett ramfönster.
Returvärde
Nonzero om metoden lyckades; 0 om belastningen misslyckades eller om det inte finns några data att läsa in.
Anmärkningar
Använd funktionen CWinAppEx::StoreWindowPlacement för att skriva storlek och plats för ett fönster till registret.
CWinAppEx::SaveCustomState
Ramverket anropar den här metoden efter att programmets tillstånd sparats i registret.
virtual void SaveCustomState();
Anmärkningar
Åsidosätt den här metoden om du vill utföra någon bearbetning när programmet har sparat tillståndet i registret. Som standard gör den här metoden ingenting.
CWinAppEx::SaveState
Skriver programtillståndet till Windows-registret.
virtual BOOL SaveState(
LPCTSTR lpszSectionName = NULL,
CFrameImpl* pFrameImpl = NULL);
BOOL SaveState(
CMDIFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
BOOL SaveState(
CFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
BOOL SaveState(
COleIPFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
Parametrar
lpszSectionName
[i] En sträng som innehåller den relativa sökvägen för en registernyckel.
pFrameImpl
[i] En pekare till ett CFrameImpl objekt. Den här ramen sparas i Windows-registret.
pFrame
[i] En pekare till ett ramfönsterobjekt. Den här ramen sparas i Windows-registret.
Returvärde
TRUE om det lyckas. FALSE annars.
Anmärkningar
Den här metoden sparar programmets tillstånd och all tillståndsinformation för det angivna ramfönstret. Om du inte anger ett ramfönster sparar metoden bara programtillståndet. Programinformationen innehåller tillståndet för CMouseManager Class, CContextMenuManager Class, CKeyboardManager Classoch CUserToolsManager Class.
Parametern lpszSectionName är inte den absoluta sökvägen för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
CWinAppEx::SetRegistryBase
Anger standardregistersökvägen för programmet.
LPCTSTR SetRegistryBase(LPCTSTR lpszSectionName = NULL);
Parametrar
lpszSectionName
[i] En sträng som innehåller sökvägen till en registernyckel.
Returvärde
En sträng som innehåller sökvägen till standardregisterplatsen.
Anmärkningar
Alla metoder i CWinAppEx Class som har åtkomst till registret startar på en standardplats. Använd den här metoden för att ändra standardregisterplatsen. Använd CWinAppEx::GetRegistryBase för att hämta standardregisterplatsen.
CWinAppEx::ShowPopupMenu
Visar en popup-meny.
virtual BOOL ShowPopupMenu(
UINT uiMenuResId,
const CPoint& point,
CWnd* pWnd);
Parametrar
uiMenuResId
[i] Ett resurs-ID för menyn.
point
[i] En CPoint som anger menyns position i skärmkoordinater.
pWnd
[i] En pekare till fönstret som äger popup-menyn.
Returvärde
Nonzero om popup-menyn visas. 0 annars.
Anmärkningar
Den här metoden visar menyn som är associerad med uiMenuResId.
Om du vill ha stöd för popup-menyer måste du ha ett CContextMenuManager objekt. Om du inte har initierat CContextMenuManager-objektet misslyckas ShowPopupMenu.
CWinAppEx::StoreWindowPlacement
Anropas av ramverket för att skriva storleken och platsen för huvudramfönstret till registret.
virtual BOOL StoreWindowPlacement(
const CRect& rectNormalPosition,
int nFlags,
int nShowCmd);
Parametrar
nFlags
[i] Flaggor som styr positionen för det minimerade fönstret och hur operativsystemet växlar mellan ett minimerat fönster och ett återställt fönster.
nShowCmd
[i] Ett heltal som anger visningstillståndet för fönstret. Mer information om möjliga värden finns i CWnd::ShowWindow.
rectNormalPosition
[i] En rektangel som innehåller koordinaterna för huvudramsfönstret när den är i återställt tillstånd.
Returvärde
Nonzero om det lyckas; 0 annars.
Anmärkningar
Som standard sparar MFC automatiskt positionen och tillståndet för huvudramsfönstret innan programmet avslutas. Den här informationen lagras i Windows-registret under WindowsPlacement-nyckeln på standardregisterplatsen för ditt program. Mer information om programmets standardregisterplats finns i CWinAppEx::GetRegistryBase.
Åsidosätt den här metoden om du vill lagra ytterligare information om huvudramsfönstret.
CWinAppEx::WriteBinary
Skriver binära data till registret.
BOOL WriteBinary(
LPCTSTR lpszEntry,
LPBYTE pData,
UINT nBytes);
Parametrar
lpszEntry
[i] En sträng som innehåller namnet på en registernyckel.
pData
[i] De data som ska lagras.
nBytes
[i] Storleken på pData i byte.
Returvärde
TRUE om den här metoden lyckas. annars FALSE.
Anmärkningar
Parametern lpszEntry är namnet på en registerpost som finns under standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
Om nyckeln som anges av lpszEntry inte finns skapar den här metoden den.
CWinAppEx::WriteInt
Skriver numeriska data till registret.
BOOL WriteInt(
LPCTSTR lpszEntry,
int nValue);
Parametrar
lpszEntry
[i] En sträng som innehåller namnet på en registernyckel.
nValue
[i] De data som ska lagras.
Returvärde
TRUE om den här metoden lyckas. annars FALSE.
Anmärkningar
Parametern lpszEntry är namnet på en registerpost som finns under standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
Om nyckeln som anges av lpszEntry inte finns skapar den här metoden den.
CWinAppEx::WriteObject
Skriver data som härleds från CObject Class till registret.
BOOL WriteObject(
LPCTSTR lpszEntry,
CObject& obj);
Parametrar
lpszEntry
[i] En sträng som innehåller värdet som ska anges.
obj
[i] En referens till CObject data som metoden ska lagra.
Returvärde
TRUE om den här metoden lyckas. annars FALSE.
Anmärkningar
Den här metoden skriver obj data till det angivna värdet under standardregisternyckeln. Använd CWinAppEx::GetRegistryBase för att fastställa den aktuella registernyckeln.
CWinAppEx::WriteSectionBinary
Skriver binära data till ett värde i registret.
BOOL WriteSectionBinary(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
LPBYTE pData,
UINT nBytes);
Parametrar
lpszSubSection
[i] En sträng som innehåller namnet på en registernyckel
lpszEntry
[i] En sträng som innehåller värdet som ska anges.
pData
[i] De data som ska skrivas till registret.
nBytes
[i] Storleken på pData i byte.
Returvärde
TRUE om den här metoden lyckas. annars FALSE.
Anmärkningar
Parametern lpszSubSection är inte den absoluta sökvägen för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
Om nyckeln som anges av lpszEntry inte finns skapar den här metoden den.
CWinAppEx::WriteSectionInt
Skriver numeriska data till registret.
BOOL WriteSectionInt(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
int nValue);
Parametrar
lpszSubSection
[i] En sträng som innehåller den relativa sökvägen för en registernyckel.
lpszEntry
[i] En sträng som innehåller värdet som ska anges.
nValue
[i] De data som ska skrivas till registret.
Returvärde
TRUE om den här metoden lyckas. annars FALSE.
Anmärkningar
Parametern lpszSubSection är inte en absolut sökväg för en registerpost. Det är en relativ sökväg som läggs till i standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
Om nyckeln som anges av lpszEntry inte finns skapar den här metoden den.
CWinAppEx::WriteSectionObject
Skriver data som härleds från CObject Class till ett specifikt registervärde.
BOOL WriteSectionObject(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
CObject& obj);
Parametrar
lpszSubSection
[i] En sträng som innehåller namnet på en registernyckel.
lpszEntry
[i] En sträng som innehåller namnet på det värde som ska anges.
obj
[i] De data som ska lagras.
Returvärde
TRUE om den här metoden lyckas. annars FALSE.
Anmärkningar
Parametern lpszSubSection är inte en absolut sökväg för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
Om värdet som anges av lpszEntry inte finns under registernyckeln som anges av lpszSubSectionskapar den här metoden det värdet.
CWinAppEx::WriteSectionString
Skriver strängdata till ett värde i registret.
BOOL WriteSectionString(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
LPCTSTR lpszValue);
Parametrar
lpszSubSection
[i] En sträng som innehåller namnet på en registernyckel.
lpszEntry
[i] En sträng som innehåller värdet som ska anges.
lpszValue
[i] Strängdata som ska skrivas till registret.
Returvärde
TRUE om den här metoden lyckas. annars FALSE.
Anmärkningar
Parametern lpszSubSection är inte en absolut sökväg för en registerpost. Det är en relativ sökväg som läggs till i slutet av standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
Om värdet som anges av lpszEntry inte finns under lpszSubSectionskapar den här metoden det.
CWinAppEx::WriteString
Skriver strängdata till registret.
BOOL WriteString(
LPCTSTR lpszEntry,
LPCTSTR lpszValue);
Parametrar
lpszEntry
[i] En sträng som innehåller namnet på en registernyckel.
lpszValue
[i] De data som ska lagras.
Returvärde
TRUE om den här metoden lyckas. annars FALSE.
Anmärkningar
Parametern lpszEntry är namnet på en registerpost som finns under standardregisternyckeln för ditt program. Om du vill hämta eller ange standardregisternyckeln använder du metoderna CWinAppEx::GetRegistryBase respektive CWinAppEx::SetRegistryBase.
Om nyckeln som anges av lspzEntry inte finns skapar den här metoden den.
Se även
hierarkidiagram
klasser
CWinApp klass
CMouseManager klass
CContextMenuManager klass
CKeyboardManager klass
CUserToolsManager klass