Solved

Values in other forms?

Posted on 2002-06-28
8
146 Views
Last Modified: 2010-05-02
Hello,

   I have a program that is not MDI.  I have two forms one called frmMain and one called frmBrowser.  For some reason I can't access values in frmMain from frmBrowser.  For example, on frmMain there are 3 text boxes and 1 list box.  If I try to access the values of these from frmBrowser it doesn't work.  For example, frmMain.txtUsername is blank when I use it in frmBrowser.  If I select the first item in the listbox, frmMain.lstItems.selected(0) is false.  But the weird thing is I can access the properties.  I can get the values like frmMain.txtUsername.height and frmMain.lstItems.listcount.  Whats going on here, do the forms need to be MDI childs to be able to access each others values?

0
Comment
Question by:ingenito
8 Comments
 
LVL 43

Expert Comment

by:TimCottee
Comment Utility
They don't need to be MDI children, but they do need to be loaded at the same time. Otherwise attempting to get the value of a control on another form will Load the other form implicitly (may not show it unless you specify this) and you will then get the default value of each control.
0
 
LVL 4

Expert Comment

by:gencross
Comment Utility
I have tried a simple test of this myself and it seems to work fine.  Is there any other info you could provide?

You do not need to use MDI to do this.  It should work fine.
0
 
LVL 4

Expert Comment

by:gencross
Comment Utility
I assume both of your forms are loaded?
0
 

Author Comment

by:ingenito
Comment Utility
Yes, frmMain loads first, then frmMain calls frmBrowser and frmBrowser is trying to get data from frmMain.
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 

Author Comment

by:ingenito
Comment Utility
Ok,

I just did a simple test by creating a new project and it works fine.  The application I'm having trouble with was created with the wizard.  Could this have anything to do with it?

0
 
LVL 6

Accepted Solution

by:
ebosscher earned 100 total points
Comment Utility
if you really can't make it work you can create a couple of public variables in a module and load the values into those before you show the browser form.

You can then reference the global variables on the browser form, rather than referencing the objects on the main form.

It's a work-around, not a solution, and I have no idea why that would be happening...
0
 
LVL 1

Expert Comment

by:alfanhendro
Comment Utility
did you unLoad the frmMain when opening frmBrowser?
if so, change the statement "Unload Me" to "Me.Hide".
also, use "frmMain.txtUsername.Text" (notice the ".Text").

if it still cannot work, declare a public variable in frmMain. (this is what ebosscher suggest)

//put this in Declaration section
Public UserName as String

//put this under subroutine that open your frmBrowser
UserName=txtUserName.Text
frmBrowser.Show

//use the UserName, instead of txtUserName
//in your frmBrowser, eg.
Msgbox frmMain.UserName
0
 
LVL 49

Expert Comment

by:DanRollins
Comment Utility
Hi ingenito,
It appears that you have forgotten this question. I will ask Community Support to close it unless you finalize it within 7 days. I will ask a Community Support Moderator to:

    Refund points and save as a 0-pt PAQ.

ingenito, Please DO NOT accept this comment as an answer.
EXPERTS: Post a comment if you are certain that an expert deserves credit.  Explain why.
==========
DanRollins -- EE database cleanup volunteer
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

There are many ways to remove duplicate entries in an SQL or Access database. Most make you temporarily insert an ID field, make a temp table and copy data back and forth, and/or are slow. Here is an easy way in VB6 using ADO to remove duplicate row…
This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now