Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

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

Posted on 2009-05-05
6
Medium Priority
?
165 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:Munawar Hussain
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 2000 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
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 

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

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

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

This article explains how to create and use a custom WaterMark textbox class.  The custom WaterMark textbox class allows you to set the WaterMark Background Color and WaterMark text at design time.   IMAGE OF WATERMARKS STEPS Create VB …
1.0 - Introduction Converting Visual Basic 6.0 (VB6) to Visual Basic 2008+ (VB.NET). If ever there was a subject full of murkiness and bad decisions, it is this one!   The first problem seems to be that people considering this task of converting…
Want to learn how to record your desktop screen without having to use an outside camera. Click on this video and learn how to use the cool google extension called "Screencastify"! Step 1: Open a new google tab Step 2: Go to the left hand upper corn…
Are you ready to place your question in front of subject-matter experts for more timely responses? With the release of Priority Question, Premium Members, Team Accounts and Qualified Experts can now identify the emergent level of their issue, signal…
Suggested Courses

885 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