[Gambas-user] Return a String from a dialog/form
Benoit Minisini
gambas at ...1...
Tue Jul 19 20:36:10 CEST 2005
On Tuesday 19 July 2005 14:54, Marco Bauer wrote:
> Hi everyone,
>
> I tried to build a form which should return a string value to the main form
> when closed. I know this works with boolean values but with string values I
> get the runtime error "Type mismatched: wanted Integer, got String
> instead".
>
> Did I completly mess up or what did I wrong? Can please somebody help me
> (you find attached the corresponding class-file and the call from the main
> form).
>
> Thanks.
> Marco
>
>
> ' Main file
> ...
> sNeuePosition = FInputPosition.Run(sPosition)
> ...
>
> ' Gambas class file
> PUBLIC SUB _new(sPosition AS String)
> DIM sArray AS String[]
>
> sArray = Split(sPosition, " ")
>
> txtPosition.Text = sArray[0]
> spnAmZug.Value = CInt(sArray[1])
> END
>
> STATIC PUBLIC FUNCTION Run(sPosition AS String) AS String
> DIM hForm AS Form
>
> hForm = NEW FInputPosition(sPosition)
> RETURN hForm.ShowModal()
> END
>
> PUBLIC SUB btnCancel_Click()
> ME.Close(" ")
> END
>
> PUBLIC SUB btnOk_Click()
> IF PositionErlaubt() = TRUE THEN
> ME.Close(txtPosition.Text & " " & CStr(spnAmZug.Value))
> ELSE
> Message.Error("This is not a legal position! Please try again!")
> END IF
> END
>
> PRIVATE FUNCTION PositionErlaubt() AS Boolean
> RETURN TRUE
> END
>
Me.Close() argument is an integer, not a string!
If you want to return something more complex than an integer in a form, put
them in static public variables. Look in the IDE or database manager source
codes. You will find many dialog boxes, and I did this way :-)
Regards,
--
Benoit Minisini
mailto:gambas at ...1...
More information about the User
mailing list