Er der nogen der kan hjælpe med at kode nedenstående subs om til en enkelt istedet for 2, eks. ved at inkluder navnet på text boksen som parameter i kaldet.
SetTextTC(T_Text) SetTextQC(Q_Text)
Private Sub SetTextTC(ByVal [text] As String) If Me.TConvertedBox.InvokeRequired Then Dim d As New ContextCallback(AddressOf SetTextTC) Me.Invoke(d, New Object() {[text]}) Else Me.TConvertedBox.Text = [text] End If End Sub Private Sub SetTextQC(ByVal [text] As String) If Me.TConvertedBox.InvokeRequired Then Dim d As New ContextCallback(AddressOf SetTextQC) Me.Invoke(d, New Object() {[text]}) Else Me.QConvertedBox.Text = [text] End If End Sub
Function WriteText(ByRef Obj As Object, ByVal [text] As String) If Obj.InvokeRequired Then Dim d As New ContextCallback(AddressOf WriteText) Me.Invoke(d, New Object() {[text]}) Else Obj.Text = [text] End If End Function
Men får følgende fejl: Error 2 Method 'Public Function WriteText(ByRef Obj As Object, text As String) As Object' does not have a signature compatible with delegate 'Delegate Sub ContextCallback(state As Object)'.
Jeg har en række tekstbokse i min form som jeg forsgøer at opdatere når mit program kører. Disse hedder eks: TConvertedBox QConvertedBox ErrorBox
Nu vil jeg gerne fra min kode opdateret feterne ved at lave et kald. Jeg har løst dette ved at lave en sub til hver tekstboks jeg skal kunne opdateret men ønsker at samle det til en enkelt sub.
Pt. ser en af mine sub således ud: Private Sub SetError(ByVal [text] As String) If Me.ErrorBox.InvokeRequired Then Dim d As New ContextCallback(AddressOf SetError) Me.Invoke(d, New Object() {[text]}) Else Me.ErrorBox.Text = [text] End If End Sub
Jeg har prøvet at lave følgende funktion: Private Sub UpdateText(ByRef CurrentTextBox As Object, ByVal [text] As String) If CurrentTextBox.InvokeRequired Then Dim d As New ContextCallback(AddressOf UpdateText) Me.Invoke(d, New Object() {[text]}) Else CurrentTextBox.Text = [text] End If End Sub
Men jeg får følgende fejl: Method 'Private Sub UpdateText(ByRef CurrentTextBox As Object, text As String)' does not have a signature compatible with delegate 'Delegate Sub ContextCallback(state As Object)'.
Fejlen angives på følgende del af koden: AddressOf UpdateText
Jeg tror jeg forstår havd du mener, modtager funktionen skal have en dimmet textbox, som du så sætter dit sub parameter objekt lig med, så kan du hive navnet og øndre / læse teksten som du har lyst til.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.