Solved

Minimize forms within MenuForm and not multiple forms on Windows Start Bar

Posted on 2009-05-05
6
157 Views
Last Modified: 2012-05-06
I have two or more forms that can be opened at the same time directly from my menu.  The forms, when minimized stay within the borders of my MainMenu form.

However, one of these forms has a button where I want to load another form, BUT NOT with .ShowDialog.  Or at least not where other forms that are open can't be activated.  I want all three forms to be free-wheeling and minimize without creating another minimized button on the start bar.

How would I open the 3rd form to create this type of situation?
From MainMenu....
 

Loading 1st Form

    Private Sub TruckStatus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuTruckStatus.Click

        If myFormsList.ContainsKey(1000) Then

            Dim frm As Form = DirectCast(myFormsList(1000), Form)

            Misc_BrowseFormStatus.RefreshBrowseFormStatusGrid.Invoke()

            frm.Activate()

            frm.WindowState = FormWindowState.Normal

        Else

            Dim frm As Form = Misc_BrowseFormStatus.Instance

            myFormsList.Add(1000, frm)

            frm.MdiParent = Me

            frm.Show()

        End If

    End Sub
 

Loading 2nd Form

    Private Sub mnuLoadMgmt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuLoadMgmt.Click

        If myFormsList.ContainsKey(2) Then

            Dim frm As Form = DirectCast(myFormsList(2), Form)

            Main_LoadMgmt.ReActivateLoadEntryForm.Invoke()

            frm.Activate()

            frm.WindowState = FormWindowState.Normal

        Else

            glNewLoad = True

            Dim frm As Form = Main_LoadMgmt.Instance

            myFormsList.Add(2, frm)

            frm.MdiParent = Me

            frm.Show()

        End If

    End Sub
 

Loading 3rd Form from inside 2nd Form

    Private Sub bBrowse_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bBrowse.Click

            glTable = "truck_loads"

            If myFormsList.ContainsKey(2001) Then

                Dim frm As Form = DirectCast(myFormsList(2001), Form)

                frm.Activate()

                frm.WindowState = FormWindowState.Normal

            Else

                Dim frm As Form = Misc_BrowseForm.Instance(dvGlobalLoads.Sort)

                myFormsList.Add(2001, frm)

                frm.Show()      ????? Here's the problem

            End If

        End If

    End Sub

Open in new window

0
Comment
Question by:TSFLLC
  • 3
  • 2
6 Comments
 
LVL 12

Expert Comment

by:needo_jee
ID: 24310301
hi,

could you try this

 Dim frm As Form = Misc_BrowseForm.Instance(dvGlobalLoads.Sort)
                myFormsList.Add(2001, frm)
                frm.Show(Me)      ????? Here's the problem


OR

me.ownedforms.add( frm)
frm.show()

-Thanks
0
 
LVL 83

Accepted Solution

by:
CodeCruiser earned 500 total points
ID: 24312211
Change this code
                Dim frm As Form = Misc_BrowseForm.Instance(dvGlobalLoads.Sort)
                myFormsList.Add(2001, frm)
                frm.Show()      ????? Here's the problem

to this
                Dim frm As Form = Misc_BrowseForm.Instance(dvGlobalLoads.Sort)
                myFormsList.Add(2001, frm)
                frm.MdiParent = Me.MdiParent
                frm.Show()      '????? Here's the problem
0
 

Author Comment

by:TSFLLC
ID: 24313573
needo_jee,

You might want to check the member list for OwnedForms.  Add is not a vlid member.
frm.Show(Me) displays the form in 'dialog mode' in that I cannot click on the other forms and make them active on top.  It also creates a separate window on the start bar as I was attempting to rectify.

CodeCruiser,
I don't know why I had not figured this one out before.
Making the current form MdiParent of Misc_BrowseForm worked like a charm.  Have a number of places with other forms where I will need to update this.

Mucho thanks!
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

Author Closing Comment

by:TSFLLC
ID: 31578286
Perfect one-liner !!!
0
 
LVL 83

Expert Comment

by:CodeCruiser
ID: 24314010
TSFLLC,
I am glad that you problem is solved. One clarification though.
>Making the current form MdiParent of Misc_BrowseForm worked like a charm.
I think you are confused here. When you start form2, you set its mdiparent to be mainform. Then when you set form3.mdiparent = form2.mdiparent then it means the mdiparent of form3 is the mainform as well. Only forms with IsMDIParent property set to true can be set as MDIParents.
0
 

Author Comment

by:TSFLLC
ID: 24314965
My mistake....I transposed the form in my comment.  You are very correct.

Thanks for the clarification.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

It’s quite interesting for me as I worked with Excel using vb.net for some time. Here are some topics which I know want to share with others whom this might help. First of all if you are working with Excel then you need to Download the Following …
The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
This is used to tweak the memory usage for your computer, it is used for servers more so than workstations but just be careful editing registry settings as it may cause irreversible results. I hold no responsibility for anything you do to the regist…
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.

895 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

15 Experts available now in Live!

Get 1:1 Help Now