Einzelnen Beitrag anzeigen

Balu der Bär
(Gast)

n/a Beiträge
 
#1

Dialogs.pas - MessageDlg erweitern

  Alt 11. Okt 2006, 15:54
Moin,

folgendes Problem: Und zwar bräuchte ich einen weiteren optionalen Button in einem MessageDlg. Daher versuche ich diesen Dialog etwas zu erweitern. Im Speziellen geht es um den Button mbSaveAll, welchen ich gerne hinzufügen möchte. Also in die Dialogs.pas gesprungen und Zeile 394 entsprechend angepasst:
Delphi-Quellcode:
type
  TMsgDlgType = (mtWarning, mtError, mtInformation, mtConfirmation, mtCustom);
  TMsgDlgBtn = (mbYes, mbNo, mbOK, mbCancel, mbAbort, mbRetry, mbIgnore,
    mbAll, mbNoToAll, mbYesToAll, mbHelp, mbSaveAll); //mbSaveAll hinzugefügt
  TMsgDlgButtons = set of TMsgDlgBtn;
Ebenfalls in den Zeilen um 2074 habe ich entsprechende Änderungen eingefügt:
Delphi-Quellcode:
var
  Captions: array[TMsgDlgType] of Pointer = (@SMsgDlgWarning, @SMsgDlgError,
    @SMsgDlgInformation, @SMsgDlgConfirm, nil);
  IconIDs: array[TMsgDlgType] of PChar = (IDI_EXCLAMATION, IDI_HAND,
    IDI_ASTERISK, IDI_QUESTION, nil);
  ButtonNames: array[TMsgDlgBtn] of string = (
    'Yes', 'No', 'OK', 'Cancel', 'Abort', 'Retry', 'Ignore', 'All', 'NoToAll',
    'YesToAll', 'Help', 'SaveAll');
  ButtonCaptions: array[TMsgDlgBtn] of Pointer = (
    @SMsgDlgYes, @SMsgDlgNo, @SMsgDlgOK, @SMsgDlgCancel, @SMsgDlgAbort,
    @SMsgDlgRetry, @SMsgDlgIgnore, @SMsgDlgAll, @SMsgDlgNoToAll, @SMsgDlgYesToAll,
    @SMsgDlgHelp, @SMsgDlgSaveAll);
  ModalResults: array[TMsgDlgBtn] of Integer = (
    mrYes, mrNo, mrOk, mrCancel, mrAbort, mrRetry, mrIgnore, mrAll, mrNoToAll,
    mrYesToAll, mrSaveAll, 0);
Dein Eintrag in der consts.pas (@SMsgDlgSaveAll) natürlich auch.

Trotzdem erhalte ich beim folgenden Code MessageDlg('Hier kann ein beliebiger Text angegeben werden.', mtInformation, [mbOK, mbSaveAll], 0); immernoch die Meldung das mbSaveAll ein undefinierter Bezeichner sei.

So schwer kann das doch nicht sein, wie kann ich den MessageDlg denn nun wirklich erweitern? Bin über jeden Hinweis glücklich. Danke euch.
  Mit Zitat antworten Zitat