Hoppa till innehållet

MessageBox

Från Wikibooks

Visar en specificerad meddelanderuta för användaren.

Unit
  Windows
function MessageBox(const Text, Caption: PChar; Flags: Longint = MB_OK): Integer;

Beskrivning[redigera]

Använd MessageBox när du vill visa en meddelanderuta med ett valbart antal knappar, ikoner och förvalda knappar. Denna funktion använder sig av Windows egna färdiga rutiner, vilket innebär att texten på knapparna har det språk som Windows använder. Ett alternativ är MessageDlg.

Parameterns Caption som skickas till funktionen är det namn eller titel som meddelanderutan får, det vill säga den text som visas i fönsterramens övre del. Denna parameter kan maximalt innehålla 255 tecken. Många tecken i Caption parametern får meddelanderutan att öka i bredd, då radbyte inte finns där.

Parametern Text är själva meddelandet som ska visas, och kan innehålla mer än 255 tecken om det behövs. Långa meddelanden får automatiskt radbyten infogade.

Hela denna funktion är ett direkt anrop till user32.dll filen och kan inte förändras på något vis. Om en mer Delphi konstruerad funktion eftersöks så rekommenderas funktionen MessageDlg.

Exempel[redigera]

Detta exempel innehåller även Case begreppet, vilket är ett fundametal begrepp inom Pascals programmerings princip.

procedure TForm1.Button1Click(Sender: TObject);
begin
   Case MessageBox(Application.Handle,'Meddelandetext med'+
                 #13+'ett valt radbyte.','Ramtexten',MB_YESNO+MB_DEFBUTTON2+
                 MB_ICONASTERISK) OF
     IDYES: ShowMessage('Ja!');
     IDNO: ShowMessage('Nej!');
  End;
end;

Resultatet av detta exempel ser du här:

Parametrar[redigera]

Parametern Flags anger vilka knappar och ikoner som kommer att synas i meddelanderutan, vilket i sin tur ger olika resultatvärden. Dessa parametrar kan kombineras för att få ett tillfredsställande resultat. Nedan finns ett antal parametrar som kan kombineras.

Parameter Betydelse
Vilka knappar
MB_ABORTRETRYIGNORE Meddelanderutan innehåller tre knappar: Avbryt, Försök igen och Ignorera.
MB_OK Meddelanderutan innehåller endast en knapp: OK
MB_OKCANCEL Meddelanderutan innehåller två knappar: OK och Avbryt.
MB_RETRYCANCEL Meddelanderutan innehåller två knappar: Försök igen och Avbryt.
MB_YESNO Meddelanderutan innehåller två knappar: Ja och Nej.
MB_YESNOCANCEL Meddelanderutan innehåller tre knappar: Ja, Nej och Avbryt.
MB_HELP En extra hjälp knapp kan infogas.
Vilken ikon
MB_ICONEXCLAMATION En ikon med ett utropstecken syns i meddelanderutan.
MB_ICONWARNING Samma som ovan.
MB_ICONINFORMATION En ikon med ett frågetecken syns i rutan till vänster om texten
MB_ICONASTERISK Samma som ovan.
MB_ICONQUESTION En ikon med ett frågetecken syns i rutan till vänster om texten
MB_ICONSTOP En ikon med ett kryss i syns i rutan, tillsammans med en varnings signal.
MB_ICONERROR Samma som ovan.
MB_ICONHAND Samma som ovan.
Förvald knapp
MB_DEFBUTTON1 Första knappen är förvald.
MB_DEFBUTTON2 Andra knappen är förvald.
MB_DEFBUTTON3 Tredje knappen är förvald.
MB_DEFBUTTON4 Fjärde knappen är förvald.

Nedan finns de olika värden, i form av konstanter, som skickas tillbaka av funktionen. Dess värden beror på vilken knapp som användaren väljer att klicka på.

Parameter Motsvarande väde Betydelse
IDOK 1 Användaren väljer OK knappen.
IDCANCEL 2 Användaren väljer Avbryt knappen.
IDABORT 3 Användaren väljer Avbryt (Cancel) knappen.
IDRETRY 4 Användaren väljer Försök igen knappen.
IDIGNORE 5 Användaren väljer Ignorera knappen.
IDYES 6 Användaren väljer Ja knappen.
IDNO 7 Användaren väljer Nej knappen.