Funksjonen MessageBoxEx oppretter, viser og opererer en meldingsboks. Meldingsboksen inneholder en programdefinert meldingen og tittel, i tillegg til en hvilken som helst kombinasjon av forhåndsdefinerte ikoner og trykknapper. WLanguageId -parameteren angir hvilket sett med språkressurser brukes til forhåndsdefinerte trykknapper. For fullstendige beskrivelser av andre parameterne for MessageBoxEx, se MessageBox.
int () MessageBoxEx HWND hWnd, / / håndtere eier-vinduetLPCTSTRlpText, / / adresse i teksten i meldingsboksenLPCTSTRlpCaption, / / adresse av tittelen på meldingsboksUINTuType, / / style av meldingsboksWORDwLanguageId / / språkidentifikator);
Angi ett av følgende flagg å angi knappene i melding-boksen:
Flagg | Betydning |
---|---|
MB_ABORTRETRYIGNORE | Meldingsboksen inneholder tre knapper: avbryte, prøv på nytt, og ignorere. |
MB_OK | Meldingsboksen inneholder én knapp: OK. Dette er standard. |
MB_OKCANCEL | Meldingsboksen inneholder to knapper: OK og Avbryt. |
MB_RETRYCANCEL | Meldingsboksen inneholder to knapper: Prøv på nytt og avbryte. |
MB_YESNO | Meldingsboksen inneholder to knapper: Ja og Nei. |
MB_YESNOCANCEL | Meldingsboksen inneholder tre knapper: Ja, Nei, og Avbryt. |
Angi ett av følgende flagg til å vise et ikon i melding-boksen:
Flagg | Betydning |
---|---|
MB_ICONEXCLAMATION, MB_ICONWARNING |
Et utropstegn ikon vises i meldingsboksen. |
MB_ICONINFORMATION, MB_ICONASTERISK |
Det vises et ikon som består av en liten bokstav jeg i en sirkel i melding-boksen. |
MB_ICONQUESTION | Et spørsmålstegn vises i meldingsboksen. |
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND |
Et Stopptegn ikon vises i meldingsboksen. |
Angi ett av følgende flagg til å angi standardknappen:
Flagg | Betydning |
---|---|
MB_DEFBUTTON1 | Den første knappen er standardknappen. MB_DEFBUTTON1 er standard med mindre MB_DEFBUTTON2, MB_DEFBUTTON3 eller MB_DEFBUTTON4 er angitt. |
MB_DEFBUTTON2 | Den andre knappen er standardknappen. |
MB_DEFBUTTON3 | Den tredje knappen er standardknappen. |
MB_DEFBUTTON4 | Den fjerde knappen er standardknappen. |
Angi ett av følgende flagg å angi modality i dialogboksen:
Flagg | Betydning |
---|---|
MB_APPLMODAL | Brukeren må svare på melding-boksen før du fortsetter arbeidet i vinduet identifisert av parameteren hWnd . Imidlertid kan brukeren flytte til Vinduer i andre tråder og arbeide i disse vinduene. Avhengig av hierarkiet av Vinduer i programmet, kan brukeren kunne flytte andre vinduer i tråden. Alle underordnede vinduer for overordnet meldingsboksen deaktiveres automatisk, men popup-vinduer er ikke. MB_APPLMODAL er standard hvis verken MB_SYSTEMMODAL eller MB_TASKMODAL er angitt. |
MB_SYSTEMMODAL | Samme som MB_APPLMODAL, bortsett fra at meldingsboksen har stilen WS_EX_TOPMOST. Bruke system-sperrende dialogbokser til å varsle brukeren av alvorlige, potensiellt ødeleggende feil som krever umiddelbar reaksjon (for eksempel kjører ut av minne). Dette flagget har ingen innvirkning på brukerens evnen til å samhandle med windows enn de som er forbundet med hWnd. |
MB_TASKMODAL | Samme som MB_APPLMODAL, bortsett fra at alle på øverste nivå vinduer som tilhører gjeldende tråd er deaktivert hvis hWnd -parameteren er NULL. Bruk dette flagget når kallende programmet eller biblioteket ikke har en tilgjengelig vindusreferanse, men fortsatt trenger å hindre inndata til andre vinduer i kallende tråden uten suspendere andre tråder. |
I tillegg kan du angi følgende flagg:
Hvis dette flagget er angitt, vil den hWnd -parameteren må være NULL. Dette er så meldingsboksen kan vises på annet enn den stasjonære som tilsvarer hWnd.
For Windows NT versjon 4.0, er verdien av MB_SERVICE_NOTIFICATION endret. Se WINUSER.H for gamle og nye verdiene. Windows NT 4.0 gir bakoverkompatibilitet for allerede eksisterende tjenester ved å tilordne den gamle verdien til den nye verdien i gjennomføringen av MessageBox - og MessageBoxEx. Denne tilordningen er bare gjort for kjørbare filer som har et versjonsnummer som sett av kobleren, mindre enn 4.0.
For å bygge en tjeneste som bruker MB_SERVICE_NOTIFICATION, og kan kjøre på både Windows NT 3.x og Windows NT 4.0, har du to valg.
|
nbsp; 2. På kobling-tid, kan du angi versjon 4.0. Ved kjøring, kan du bruke funksjonen GetVersionEx kontrollerer du systemversjonen for. Så når du kjører på Windows &NT 3.x, bruker MB_SERVICE_NOTIFICATION_NT3X; og på Windows NT 4.0, kan du bruke MB_SERVICE_NOTIFICATION. |
En liste over språk-IDer som støttes av Win32, kan du se Språk-IDer. Legg merke til at hver lokaliserte utgivelsen av Windows og Windows NT inneholder vanligvis ressurser bare for et begrenset antall språk. Således, for eksempel den amerikanske versjonen tilbyr LANG_NORWEGIAN, den franske versjonen tilbyr LANG_FRENCH, den tyske versjonen tilbyr LANG_GERMAN og den japanske versjonen tilbyr LANG_JAPANESE. Hver versjon tilbyr LANG_NEUTRAL. Dette begrenser settet med verdier som kan brukes med parameteren wLanguageId . Før du angir en språk-ID, bør du Nummerer de nasjonale innstillingene som er installert på et system.
Hvis funksjonen lykkes, er returverdien en ikke-null-menyelementet-verdien som returneres av dialogboksen.
Verdi | Betydning |
---|---|
IDABORT | Avbryt-knappen ble valgt. |
IDCANCEL | Avbryt-knappen ble valgt. |
IDIGNORE | Ignorere knappen ble valgt. |
IDNO | Ingen knappen ble valgt. |
IDOK | OK-knappen ble valgt. |
IDRETRY | Prøv på nytt-knappen ble valgt. |
IDYES | Ja ble-knappen valgt. |
Hvis en meldingsboks har en Avbryt-knapp, returnerer funksjonen IDCANCEL verdien når enten esc-tasten eller Avbryt-knappen trykkes. Hvis meldingsboksen har ingen Avbryt-knappen, har trykke esc-tasten ingen virkning.
Hvis funksjonen mislykkes, er verdien som returneres Null. Til å vise utvidet feilinformasjon, kan du ringe GetLastError.
Når du oppretter en system-sperrende meldingsboksen for å angi at systemet har lite minne, strengene som sendes som lpText og lpCaption -parametere bør ikke tas fra en ressursfil, fordi et forsøk på å laste inn ressursen kan mislykkes.
Når et program kaller funksjonen MessageBoxEx og angir flaggene MB_ICONHAND og MB_SYSTEMMODAL for uType -parameteren, viser Win32 API resulterende meldingsboksen uavhengig av tilgjengelig minne. Når du angir disse flaggene, begrenser systemet lengden i melding-boksen tekst til én linje.
Hvis du oppretter en meldingsboks når en dialogboks er til stede, bruker du håndtaket i dialogboksen som den hWnd -parameteren. Parameteren hWnd bør ikke identifisere et underordnet vindu, for eksempel en dialogboks.
Windows 95:Systemet kan støtte maksimalt 16,364 vinduet håndtak.
nbsp; Windows &NT: krever versjon 3.1 eller senere.
Windows:Krever Windows 95 eller senere.
Windows CE:Som ikke støttes.
Topptekst:Deklarert i winuser.h.
Importere biblioteket:Bruk user32.lib.
Unicode:Implementert som Unicode- og ANSI-versjoner i Windows og Windows NT.
Oversikt over dialogboksen-boksene, dialogboksen fungerer, MAKELANGID, MessageBeep,MessageBox , MessageBoxIndirect, SetForegroundWindow