MessageBox

Funksjonen MessageBox 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.

int MessageBox) HWND  hWnd, / / håndtere eier-vinduetLPCTSTRlpText, / / adresse i teksten i meldingsboksenLPCTSTRlpCaption, / / adresse av tittelen på meldingsboksUINTuType / / style av meldingsboks);
 

Parametere

hWnd
Identifiserer eiervinduet av meldingsboksen skal opprettes. Hvis denne parameteren er NULL, har meldingsboksen ingen eiervinduet.
lpText
Pekeren til en null-terminert streng som inneholder meldingen som skal vises.
lpCaption
Pekeren til en null-terminert streng som brukes for dialogbokstittelen. Hvis denne parameteren er NULL, brukes standardtittelen feil.
uType
Angir et sett med Bitflagg som angir innholdet og virkemåten i dialogboksen. Denne parameteren kan være en kombinasjon av flaggene fra følgende grupper av flagg.

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:

MB_DEFAULT_DESKTOP_ONLY
Skrivebordet mottak av inndata må være en standardskrivebordet; Hvis funksjonen ikke mislykkes. En standardskrivebordet er en et program som kjører på etter at brukeren har logget seg på.
MB_HELP
Legger til en Hjelp-knapp i meldingsboksen. Hvis du velger du Hjelp-knappen eller trykke F1 genererer en hjelp-hendelse.
MB_RIGHT
Teksten som er høyrejustert.
MB_RTLREADING
Viser meldingen og bildetekst tekst med leseretning fra høyre mot venstre på hebraisk og arabisk systemer.
MB_SETFOREGROUND
Meldingsboksen blir det forgrunns-vinduet. Internt, kaller systemet funksjonen SetForegroundWindow for meldingsboksen.
MB_TOPMOST
Meldingsboksen opprettes med vindusstilen WS_EX_TOPMOST.
MB_SERVICE_NOTIFICATION
Windows NT: Oppringeren finnes en tjeneste som varsler brukeren av en hendelse. Funksjonen viser en meldingsboks på gjeldende active desktop, selv om det er ingen brukere er logget datamaskinen.

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.
  1. På kobling-tid, kan du angi et versjonsnummer som er mindre enn 4.0; eller
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.

MB_SERVICE_NOTIFICATION_NT3X
Windows NT: Denne verdien tilsvarer verdien som er definert for MB_SERVICE_NOTIFICATION for Windows NT versjon 3.51.

Returverdier

Returverdien er null hvis det ikke er nok minne til å opprette meldingsboksen.

Hvis funksjonen lykkes, er returverdien en av de følgende menyelement verdiene 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 hvis enten esc-tasten trykkes, eller Avbryt-knappen er valgt. Hvis meldingsboksen har ingen Avbryt-knappen, har ved å trykke på esc ingen virkning.

Merknader

Når du bruker en system-modalt meldingsboks for å angi at systemet har lite minne, strengene vises til i 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 MessageBox og angir flaggene MB_ICONHAND og MB_SYSTEMMODAL for uType -parameteren, vises meldingsboksen resulterende uavhengig av tilgjengelig minne. Når disse flaggene er angitt, vil systemet begrenser lengden på meldingsteksten til tre linjer. Systemet gjør ikke bryte linjene slik at den passer i meldingsboksen, imidlertid automatisk slik at meldingen strengen må inneholde linjeskift for å bryte linjer på de aktuelle stedene.

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 kontroll i en dialogboks.

Windows 95:Systemet kan støtte maksimalt 16,364 vinduet håndtak.

Windows CE: Windows CE støtter ikke følgende stiler for parameteren uType

MB_SYSTEMMODAL

MB_TASKMODAL

MB_HELP

MB_RIGHT

MB_RTLREADING

MB_DEFAULT_DESKTOP_ONLY

MB_SERVICE_NOTIFICATION

MB_USERICON.

Følgende returnere verdier ikke støttes:

IDCLOSE

IDHELP

Hurtiginformasjon

nbsp; Windows &NT: krever versjon 3.1 eller senere.
Windows:Krever Windows 95 eller senere.
Windows CE:Krever versjon 1.0 eller senere.
Topptekst:Deklarert i winuser.h.
Importere biblioteket:Bruk user32.lib.
Unicode:Implementert som Unicode- og ANSI-versjoner i Windows og Windows NT.

Se også

Oversikt over dialogboksen-boksene, dialogboksen fungerer, FlashWindow, MessageBeep, MessageBoxEx, MessageBoxIndirect, SetForegroundWindow

Index