Einzelnen Beitrag anzeigen

Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#2

AW: CreateMessageDialog Message zu lang. Zeilenumbruch nach 75 Zeichen?

  Alt 10. Jun 2019, 16:15
Moin...
Zitat:
Aber gibt es eine elegantere Lösung
Dieses Problem hatte ich auch mal. Die Texte kamen die so raus wie ich sie wollte. Abhilfe schaffte ein eigener MessageDialog.

Im Prinzip eine stinknormale Form (Modal) mit der Optik, den Buttons und der Logik. Von dieser Form hat man die Möglichkeit durch Ableitungen andere Dialoge zu erstellen.

Delphi-Quellcode:
TMyMessageDialog = class
  strict private
    class function ShowMessage(MessageCaption: string; MsgType: TMsgDlgType; Buttons: TMsgDlgButtons; MessageLines: TStrings; Help: LongInt = 0; MessageColor: Integer = clBlack; Parent: TForm = nil): Integer;
  public
    constructor Create;
    destructor Destroy; override;
    class function MessageDlg(MessageText: string; MsgType: TMsgDlgType; Buttons: TMsgDlgButtons; Help: LongInt = 0; MessageColor: Integer = clBlack; Parent: TForm = nil): Integer; overload; // wie MessageDialog Original
    class function MessageDlg(MessageText: string; MessageHeader: string; MsgType: TMsgDlgType; Buttons: TMsgDlgButtons; MessageColor: Integer = clBlack; Parent: TForm = nil): Integer; overload;
    class function MessageDlg(MessageLines: TStrings; MessageHeader: string; MsgType: TMsgDlgType; Buttons: TMsgDlgButtons; MessageColor: Integer = clBlack; Parent: TForm = nil): Integer; overload;
    class function MessageDlg(E: EDatabaseError; MessageHeader: string; MsgType: TMsgDlgType; Buttons: TMsgDlgButtons; MessageColor: Integer = clBlack; Parent: TForm = nil): Integer; overload;
  end;
Vorteile:
1. Corporate Design
2. internationalisierbar
3. Farbgebung der Texte
4. Breite paßt sich den Texten an
5. Höhe paßt sich den Texten an
6. Texte als TStrings

...das wäre meine elegantere Lösung.
Miniaturansicht angehängter Grafiken
dialog.png  
  Mit Zitat antworten Zitat