Link to home
Start Free TrialLog in
Avatar of preshitreddy
preshitreddy

asked on

sending data from form to form

Hi there,

I have a mainform in which i have various text boxes. I have keypadform which is a keypad with buttons for A,B,C...etc.

When a user presses buttons in keypadform, the textbox in mainform which had focus should get the corresponding alphabet in it.

The Question is, How do know which textbox has focus becuase the mainform itself loses focus when the user is clicking on the keypadform.

Thanks,

Reddy.
Avatar of PerryDK
PerryDK

what language are you using visual basic, visual MFC C++, C++ Builder, etc.   Need to know more information to answer the question.
Avatar of preshitreddy

ASKER

I am using VB.net
ok sorry can't help you then :(
Its best to be specific when asking your questions so that experts know how to answer your question.

Sorry I can't help because I know very little of VB but you should be able to iterate through the components on your form and call some function that might be named something like HasFocus.  You might be better off asking in the Programming->Languages->Visual Basic Thread
You can simple refer to an object on another form as if you would on the same form. For example, imagine you have the textbox in the keypad form, then your code for button "a" would be something like:

text1.text = text1.text & "A"

Now, let's say you're in the keypad form, and you want to update the textbox on the other form, you can simple do this:

mainform.text1.text = mainform.text1.text & "A"
This is a quick and dirty example.

You have two forms and a module.

On form 1 you have 3 text boxes(Text1, Text2 Text3), and a command button (Command1).

ON form 2 you have a command button (Command1).

Here is the Code For form 1

----------------------------------------
Option Explicit

Private Sub Command1_Click()
Form2.Show
End Sub

Private Sub Text1_GotFocus()
Set T = Text1

End Sub

Private Sub Text2_GotFocus()
Set T = Text2

End Sub

Private Sub Text3_GotFocus()
Set T = Text3

End Sub
----------------------------------------





Here is the Code For form2

----------------------------------------
Option Explicit

Private Sub Command1_Click()
T.Text = "DD"
End Sub

----------------------------------------







Here is the Code For the module
----------------------------------------
Option Explicit

Public T As TextBox

----------------------------------------




I am not going to explain, but if you need it please let me know,

John
Hi preshitreddy:
Try the following:

    Dim CurrentTextBox As TextBox
    Private Sub txtGotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles Text1.GotFocus, Text2.GotFocus, TExt3.GotFocus' , add more textboxes if needed. This can also be done through code with AddHandler
        CurrentTextBox = CType(sender, TextBox)
    End Sub

Dabas
Hi All,

I found the solution.

In my mainform, when I am initializing keypadform, i added,

Me.AddOwnedForm(KeypadForm)

In keypadform, when a button is clicked, I did,

Me.Owner.ActiveControl.Text = Me.Owner.ActiveControl.Text + myString

So whenever a user presses buttons in keypadform, the alphabet associated with that button (a,b,c,1,2,3 etc) shows up in the textbox which last had the focus in mainform.

Thanks for all the support guys.

ASKER CERTIFIED SOLUTION
Avatar of Netminder
Netminder

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial