Rückgabewert abfragen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Rückgabewert abfragen

Re: Rückgabewert abfragen

von ykcim » Fr, 25.07.2008 17:18

Hallo,

wenn Du mbOK so ein setzt kann es zu keiner Fehlermeldung kommen. Für Starbasic ist der Wert einfach leer. Der Rückgabewert von MyDlg.excute() ist entweder 1 (für OK) oder 2 (für Abbrechen). Achso und 0 wenn der Dialog über das Kreuz oben rechts geschlosssen wird.

Wenn der Schalterstandardschaltfläche auf ja steht reagiert dieser Button auf die Eingabetaste. Also sollten nie zwei Buttons oder mehr diesen Status haben.

mfg
Michael

Re: Rückgabewert abfragen

von Schwedenbitter » Fr, 25.07.2008 15:53

Hallo,

irgenwie muss das doch aber gehen! Ich habe einen Dialog gebastelt und die Buttons über die Eigenschaften Art der Schaltfläche = OK festgelegt. Dazu habe ich dann folgenden Code geschrieben:

Code: Alles auswählen

Sub Abfrage
	A_Init_Dlg
	If MyDlg.Execute() <> mbOK Then
		Neu_Text
	End If
End Sub
Ich kenne mbOK aus Delphi und irgendwie scheint auch Basic damit etwas anfangen zu können. Jedenfalls bekomme ich keiner Fehlermeldung. Paradoxer Weise klappt aber = mbOK nicht, obwohl es gerade der OK-Button ist. Will sagen: der Code in der If-Abfrage wird ausgeführt, wenn OK geklickt wird...

Was mache ich denn noch falsch?
Und was bedeutet die Eigenschaft Standardschaltfläche (Ja oder Nein) bei einem Button?

Gruß, Alex

von toni » Do, 08.02.2007 08:53

Danke, das hatte ich auch schon versucht. Allerdings hatte ich beim Abbrechen auf die 0 und nicht auf die 2 abgefragt.

Gruss

Thomas

von Stephan » Mi, 07.02.2007 17:12

Ich weis nicht so recht auf welches Object ich die Execute-Methode anwenden soll
Auf garkeins. Die MsgBox-Funktion ist eine Funktion im Namensinne und gibt deshalb, wie jede Funktion, einen Rückgabewert (hier Mldg) zurück. Die MsgBox ist hingegen kein Basic-Dialog.

Code: Alles auswählen

Mldg = MsgBox("Mit dieser Aktion gehen die von Ihnen" & CHR(10) & _
                   "eingegebenen Daten verloren.",1 , "Eingabeprüfung") 

    Select Case Mldg
           Case 1 
             MsgBox "ok" 
           Case 2 
             MsgBox "abbrechen" 

End Select


Gruß
Stephan

Rückgabewert abfragen

von toni » Mi, 07.02.2007 16:34

Hallo,

Ich rufe einen Starbasic Dialog mit den Schaltflächen OK und abbrechen auf (1). Nun möchte ich auswerten, welchen Button der Anwender geklickt hat:

Code: Alles auswählen

Dim Mldg 
     Mldg = MsgBox("Mit dieser Aktion gehen die von Ihnen" & CHR(10) & _
                   "eingegebenen Daten verloren.",1 , "Eingabeprüfung")

    Select Case Mldg.Execute()
           Case 1 
             MsgBox "ok"
           Case 0 
             MsgBox "abbrechen"
    End Select
Ich weis nicht so recht auf welches Object ich die Execute-Methode anwenden soll. Der Code funktioniert so nicht.

Kann mir jemand weiter helfen?

Gruss

Thomas

Nach oben