De functie MessageBoxEx wordt gemaakt, wordt weergegeven en werkt een berichtvenster. Het berichtvenster bevat een toepassing gedefinieerd bericht weergegeven en titel, plus elke combinatie van vooraf gedefinieerde pictogrammen en drukknoppen. De parameter wLanguageId geeft u op welke groep resources taal wordt gebruikt voor de vooraf gedefinieerde drukknoppen. Zie voor een volledige beschrijving van de andere parameters van MessageBoxEx MessageBox.
int () MessageBoxEx HWND hWnd, / / verwerken van eigenaar vensterLPCTSTRlpText, / / adres van tekst in tekstvakLPCTSTRlpCaption, / / adres van de titel van het berichtvensterUINTuType, / / style van berichtvensterWORDwLanguageId / / taal-id);
Een van de volgende vlaggen om aan te geven de knoppen opgenomen in het berichtvak opgeven:
Vlag | Betekenis |
---|---|
MB_ABORTRETRYIGNORE | Het berichtvenster bevat drie drukknoppen: Abort, Retry, en negeren. |
MB_OK | Het berichtvenster bevat een drukknop: OK. Dit is de standaardinstelling. |
MB_OKCANCEL | Het berichtvenster bevat twee drukknoppen: OK en annuleren. |
MB_RETRYCANCEL | Het berichtvenster bevat twee drukknoppen: opnieuw en annuleren. |
MB_YESNO | Het berichtvenster bevat twee drukknoppen: Ja en Nee. |
MB_YESNOCANCEL | Het berichtvenster bevat drie drukknoppen: Ja, Nee en annuleren. |
Een van de volgende vlaggen een pictogram wordt weergegeven in het berichtvak opgeven:
Vlag | Betekenis |
---|---|
MB_ICONEXCLAMATION, MB_ICONWARNING |
Een uitroepteken pictogram weergegeven in het berichtvak. |
MB_ICONINFORMATION, MB_ICONASTERISK |
Een pictogram dat bestaat uit een kleine letter ik in een cirkel wordt weergegeven in het berichtvak. |
MB_ICONQUESTION | Een vraagteken pictogram weergegeven in het berichtvak. |
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND |
Een stopbord pictogram weergegeven in het berichtvak. |
Een van de volgende vlaggen om aan te geven de standaardknop opgeven:
Vlag | Betekenis |
---|---|
MB_DEFBUTTON1 | De eerste knop is de standaardknop. MB_DEFBUTTON1 is de standaardinstelling tenzij MB_DEFBUTTON2, MB_DEFBUTTON3 of MB_DEFBUTTON4 is opgegeven. |
MB_DEFBUTTON2 | De tweede knop is de standaardknop. |
MB_DEFBUTTON3 | De derde knop is de standaardknop. |
MB_DEFBUTTON4 | De vierde knop is de standaardknop. |
Een van de volgende vlaggen om aan te geven van de modaliteit van het dialoogvenster opgeven:
Vlag | Betekenis |
---|---|
MB_APPLMODAL | De gebruiker moet reageren op het berichtvenster voordat u verdergaat werk in het venster hWnd de parameter. Echter, de gebruiker kan overschakelen naar het venster van andere threads en werken in die Vensters. Afhankelijk van de hiërarchie van Vensters in de toepassing, de gebruiker mogelijk om te verplaatsen naar een ander venster binnen de discussielijn. Alle onderliggende vensters van het bovenliggende object van het berichtvenster worden automatisch uitgeschakeld, maar pop-upvensters zijn niet. MB_APPLMODAL is de standaard als MB_SYSTEMMODAL noch MB_TASKMODAL is opgegeven. |
MB_SYSTEMMODAL | Hetzelfde als MB_APPLMODAL, behalve dat het berichtvenster de WS_EX_TOPMOST stijl heeft. Systeem-modal berichtvensters gebruiken om de gebruiker van ernstige, potentieel schadelijke fouten die onmiddellijke aandacht (bijvoorbeeld, bijna geen geheugen) vereisen te informeren. Deze vlag heeft geen invloed op de mogelijkheden van gebruikers om te interageren met andere dan die welke verband houden met hWnd windows. |
MB_TASKMODAL | Hetzelfde als MB_APPLMODAL behalve dat alle op het hoogste niveau Vensters die behoren tot de huidige thread zijn uitgeschakeld als de hWnd parameter NULL is. Deze vlag gebruiken wanneer de aanroepende toepassing of bibliotheek beschikt niet over een vensteringang beschikbaar maar nog nodig heeft om te voorkomen ingang naar een ander venster in de aanroepende draad zonder opschorting van andere threads. |
Daarnaast kunt u de volgende vlaggen:
Als deze vlag is ingesteld, moet de parameter hWnd NULL. Dit is dus het berichtvenster kan worden weergegeven op een bureaublad andere dan het bureaublad dat overeenkomt met de hWnd.
Voor Windows NT versie 4.0, is de waarde van MB_SERVICE_NOTIFICATION veranderd. Zie WINUSER.H voor de oude en nieuwe waarden. Windows NT 4.0 biedt achterwaartse compatibiliteit voor reeds bestaande diensten door de oude waarde toewijzen aan de nieuwe waarde in de uitvoering van MessageBox en MessageBoxEx. Deze toewijzing gebeurt slechts voor uitvoerbare bestanden die een versienummer, die wordt ingesteld door de linker, minder dan 4.0 hebben.
Om te bouwen van een service die MB_SERVICE_NOTIFICATION gebruikt, en kan draaien op zowel Windows NT 3.x en Windows NT 4.0, heb je twee keuzes.
|
nbsp; 2. Link-tijd, geef versie 4.0. Tijdens runtime, gebruikt u de functie GetVersionEx om te controleren de systeemversie. Toen draait op Windows &NT 3.x, gebruik MB_SERVICE_NOTIFICATION_NT3X; en op Windows NT 4.0, gebruik MB_SERVICE_NOTIFICATION. |
Zie voor een lijst van de taal-id's ondersteund door Win32, Taalcodes. Merk op dat elke versie van Windows gelokaliseerde en Windows NT meestal middelen slechts voor een beperkt aantal talen bevat. Dus, bijvoorbeeld, de Amerikaanse versie biedt LANG_DUTCH, de Franse versie biedt LANG_FRENCH, de Duitse versie biedt LANG_GERMAN en de Japanse versie biedt LANG_JAPANESE. Elke versie biedt LANG_NEUTRAL. Dit beperkt de set van waarden die kunnen worden gebruikt met de parameter wLanguageId . Voordat u een taal-id opgeeft, moet u de landinstellingen die zijn geïnstalleerd op een systeem opsommen.
Als de functie slaagt, is de geretourneerde waarde een waarde van de niet-nulzijnde menu-item geretourneerd door het dialoogvenster.
Waarde | Betekenis |
---|---|
IDABORT | Knop afbreken werd geselecteerd. |
IDCANCEL | Knop Annuleren werd geselecteerd. |
IDIGNORE | Negeren knop werd geselecteerd. |
IDNO | Geen knop werd geselecteerd. |
IDOK | Knop OK werd geselecteerd. |
IDRETRY | Probeer knoop opnieuw werd geselecteerd. |
IDYES | Ja werd knop geselecteerd. |
Als een berichtvenster een knop Annuleren heeft, retourneert de functie de waarde van IDCANCEL wanneer de esc-toets of de knop Annuleren wordt gedrukt. Als het berichtvak geen knop Annuleren heeft, heeft op esc te drukken geen effect.
Als de functie mislukt, is de retourwaarde nul. Te krijgen uitgebreide foutinformatie, Bel GetLastError.
Wanneer u een systeem-modaal berichtvenster om aan te geven dat het systeem is onvoldoende geheugen beschikbaar, de tekenreeksen doorgegeven als de parameters lpText en lpCaption moeten niet worden overgenomen uit een resourcegroepbestand, omdat een poging om te laden de resource kan niet maken.
Wanneer een toepassing de functie MessageBoxEx aanroept en de vlaggen van de MB_ICONHAND en MB_SYSTEMMODAL voor de parameter uType geeft , wordt de resulterende berichtvenster ongeacht beschikbaar geheugen weergegeven in de Win32 API. Wanneer u deze vlaggen opgeeft, beperkt het systeem de lengte van de tekst berichtvenster in één regel.
Als u een berichtvenster maakt terwijl een dialoogvenster aanwezig is, gebruik de hendel van het dialoogvenster als de parameter hWnd . De parameter hWnd moet niet het identificeren van een onderliggend venster, zoals een dialoogvenster.
Windows 95:Het systeem kan een maximum van 16,364 venster grepen ondersteunen.
nbsp; Windows &NT: versie 3.1 of hoger vereist.
Windows:Windows 95 of hoger vereist.
Windows CE:Niet-ondersteunde.
Header:Verklaard in winuser.h.
Bibliotheek importeren:User32.lib gebruiken.
Unicode:Geïmplementeerd als Unicode en ANSI-versies van Windows en Windows NT.
Overzicht van dialoogvenster vakken, dialoogvenster vak functies, MAKELANGID, MessageBeep,MessageBox , MessageBoxIndirect, SetForegroundWindow