Button Format



  • Hi

    ich hab mal ne frage wieso krieg ich bei dieser MessageBox

    MessageDlg("Bitte wählen sie ein Bild aus",mtError,mbOK,1);
    

    diesen Error

    [C++ Fehler] Unit1.cpp(396): E2034 Konvertierung von 'TMsgDlgBtn' nach 'TMsgDlgButtons' nicht möglich
    [C++ Fehler] Unit1.cpp(396): E2342 Keine Übereinstimmung des Typs beim Parameter 'Buttons' ('TMsgDlgButtons' erwartet, 'TMsgDlgBtn' erhalten)
    

    bin echt ratlos denn in der Hilfe steht auch nur

    Kategorie
    
    Dialogfelder und Meldungen
    
    extern PACKAGE int __fastcall MessageDlg(const AnsiString Msg, TMsgDlgType DlgType, [b]TMsgDlgButtons Buttons[/b], int HelpCtx);
    

    wenn man dem link folgt der auf TMsgDlgButtons Buttons liegt

    kommt man dann zu einer Liste möglicher Butten varianten

    Wert	Bedeutung
    
    mbYes	        Eine Schaltfläche mit dem Text "Ja"
    mbNo	        Eine Schaltfläche mit dem Text "Nein"
    mbOK	        Eine Schaltfläche mit dem Text "OK"
    mbCancel	Eine Schaltfläche mit dem Text "Abbrechen"
    mbAbort	        Eine Schaltfläche mit dem Text "Abbruch"
    mbRetry	        Eine Schaltfläche mit dem Text "Wiederholen"
    mbIgnore	Eine Schaltfläche mit dem Text "Ignorieren"
    mbAll	        Eine Schaltfläche mit dem Text "Alles"
    mbNoToAll	Eine Schaltfläche mit dem Text "Nein zu allen"
    mbYesToAll	Eine Schaltfläche mit dem Text "Ja zu allen"
    mbHelp	        Eine Schaltfläche mit dem Text "Hilfe"
    

    wenn ich dann einen dieser Buttons einbauen will krieg ich die Fehlermeldung von oben deshalb bin ich grad ratlos woran das liegen könnte und was man dagegen tun kann 😕 😕

    bin für jede antwort dankbar

    mfg Virus



  • Hallo

    Du verwendest eine Konstante, definiert in dem enum TMsgDlgBtn.
    Die Funktion will aber eine Instanz der Set-Klasse TMsgDlgButtons haben, die als Kombination der Werte in TMsgDlgBtn definiert ist.
    Korrekt sähe der Aufruf aus :

    MessageDlg("Bitte wählen sie ein Bild aus",mtError,TMsgDlgButtons() <<mbOK,1);
    

    Denn damit ist es möglich, den Dialog mit einer beliebigen Kombination der definierten Buttonarten zu versehen.

    bis bald
    akari



  • achso ok danke für die antwort

    ja funktioniert

    ging ja echt fix 🙂


Anmelden zum Antworten