473,507 Members | 2,375 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Opening Forms.

I have an application that starts with a Module (Sub Main) that calls a few forms in order. When I close the next to last form, the last form is called and closes immediately. I have application.run(me) in the load event for that form and it opens fine if I call it at the beginning of the module. Here is the module code....

Module mdlLogon
Sub main()
Dim OpenFrmDbConnect As New FrmDBConnect()
OpenFrmDbConnect.Show()

If Form1.ds = Nothing Then
Dim Result As DialogResult
Result = MessageBox.Show("You must setup the database connections, Click Ok to do so or Cancel to quit the program.", "Initial Setup",
MessageBoxButtons.OKCancel, _MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1, MessageBoxOptions.ServiceNotification)

If Result = DialogResult.OK Then
Dim OpenFrmSetup As New FrmSetup()
OpenFrmSetup.Show()

ElseIf Result = DialogResult.Cancel Then
Exit Sub
End If
End If

Dim OpenFrmLogon As New FrmLogon()
OpenFrmLogon.Show()

' This is the call that dies below..

Dim OpenForm1 As New Form1()
OpenForm1.Show()

End Sub
End Module

This is driving me crazy!! Please someone help!!!!

Nov 21 '05 #1
13 1118
"Shawn" <sh**********@ccci.org> schrieb:
I have an application that starts with a Module (Sub Main) that calls a few
forms in order. When I close the next to last form, the last form is called
and closes immediately.


\\\
Public Module Program
Public Sub Main()
Dim f As New Form1()
f.Show()
Application.Run()
End Sub
End Module
///

In the project properties, select 'Sub Main' as startup object. Place the
code below in a button's 'Click' event handler:

\\\
Dim f2 As New Form2()
f2.Show()
Me.Close()
///

You can exit the application by calling 'Application.ExitThread'. Take a
look at the 'ApplicationContext' class too.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Nov 21 '05 #2
This pretty much looks like what I already have... Am I missing something?

"Herfried K. Wagner [MVP]" <hi***************@gmx.at> wrote in message
news:O%****************@TK2MSFTNGP09.phx.gbl...
"Shawn" <sh**********@ccci.org> schrieb:
I have an application that starts with a Module (Sub Main) that calls a fewforms in order. When I close the next to last form, the last form is calledand closes immediately.


\\\
Public Module Program
Public Sub Main()
Dim f As New Form1()
f.Show()
Application.Run()
End Sub
End Module
///

In the project properties, select 'Sub Main' as startup object. Place the
code below in a button's 'Click' event handler:

\\\
Dim f2 As New Form2()
f2.Show()
Me.Close()
///

You can exit the application by calling 'Application.ExitThread'. Take a
look at the 'ApplicationContext' class too.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Nov 21 '05 #3
"Shawn" <sh**********@ccci.org> schrieb:
This pretty much looks like what I already have... Am I missing something?


Maybe the reason that your code doesn't work is that you are calling
'Application.Run' in the form's 'Load' event handler -- which will already
require a message pump.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Nov 21 '05 #4
Yes.

As Herfried indicated, you should have the Application.Run in the Sub Main,
not in the Load event handler of a form.

It might seem that the difference is 'being picky', but the difference is
VERY important.
"Shawn" <sh**********@ccci.org> wrote in message
news:%2****************@TK2MSFTNGP12.phx.gbl...
This pretty much looks like what I already have... Am I missing something?

"Herfried K. Wagner [MVP]" <hi***************@gmx.at> wrote in message
news:O%****************@TK2MSFTNGP09.phx.gbl...
"Shawn" <sh**********@ccci.org> schrieb:
>I have an application that starts with a Module (Sub Main) that calls a few >forms in order. When I close the next to last form, the last form is called >and closes immediately.


\\\
Public Module Program
Public Sub Main()
Dim f As New Form1()
f.Show()
Application.Run()
End Sub
End Module
///

In the project properties, select 'Sub Main' as startup object. Place
the
code below in a button's 'Click' event handler:

\\\
Dim f2 As New Form2()
f2.Show()
Me.Close()
///

You can exit the application by calling 'Application.ExitThread'. Take a
look at the 'ApplicationContext' class too.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>


Nov 21 '05 #5
Well, I made the changes and it still works that same. I like having the
application.run code in the module, so thanks, but it still does not keep
Form1 open. I even tried creating a new blank form just to see if there was
some code in form1 I was not seeing, but the same thing happens.

Also, if I replace the call to form1 with a second call to FrmLogon, it
calls it twice, but nothing else seems to start in that last position...

"Stephany Young" <noone@localhost> wrote in message
news:ew**************@TK2MSFTNGP14.phx.gbl...
Yes.

As Herfried indicated, you should have the Application.Run in the Sub Main, not in the Load event handler of a form.

It might seem that the difference is 'being picky', but the difference is
VERY important.
"Shawn" <sh**********@ccci.org> wrote in message
news:%2****************@TK2MSFTNGP12.phx.gbl...
This pretty much looks like what I already have... Am I missing something?
"Herfried K. Wagner [MVP]" <hi***************@gmx.at> wrote in message
news:O%****************@TK2MSFTNGP09.phx.gbl...
"Shawn" <sh**********@ccci.org> schrieb:
>I have an application that starts with a Module (Sub Main) that calls a
few
>forms in order. When I close the next to last form, the last form is

called
>and closes immediately.

\\\
Public Module Program
Public Sub Main()
Dim f As New Form1()
f.Show()
Application.Run()
End Sub
End Module
///

In the project properties, select 'Sub Main' as startup object. Place
the
code below in a button's 'Click' event handler:

\\\
Dim f2 As New Form2()
f2.Show()
Me.Close()
///

You can exit the application by calling 'Application.ExitThread'. Take

a look at the 'ApplicationContext' class too.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>



Nov 21 '05 #6
Shawn,

I never use an application start or a sub main in VBNet form program

A login form is typical a modal form in the load event of a main form. When
you do this in pseudo than

dim frm as New myloginform
(Here you can use the dialogOK if, i don't do it now)
frm.showdialog
if frm.pw not is correct then
me.close 'or whatever
end if
frm.dispose

When the password is not correct than will the login form the only one that
was showed, because the form is showed after the formload.

I hope this helps,

Cor

Nov 21 '05 #7
Cor,

"Cor Ligthert" <no************@planet.nl> schrieb:
A login form is typical a modal form in the load event of a main form.
When you do this in pseudo than

dim frm as New myloginform
(Here you can use the dialogOK if, i don't do it now)
frm.showdialog
if frm.pw not is correct then
me.close 'or whatever
end if
frm.dispose

When the password is not correct than will the login form the only one
that was showed, because the form is showed after the formload.


Mhm... Why should the main form be loaded if there is no guarantee that it
will be shown at all? If the login form is shown, why is it shown modally
if there are no other forms open?

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Nov 21 '05 #8
Herfried
Mhm... Why should the main form be loaded if there is no guarantee that
it will be shown at all? If the login form is shown, why is it shown
modally if there are no other forms open?


Probably it is not even loaded.
This are the first instructions.

However why not?

And even when it takes time, when it is an unauthorised action than it will
even stop the ones when it takes time.

(And authorised it cost nothing more).

However why not?

Cor
Nov 21 '05 #9
Well, I have the Sub Main Module doing a few different things. The program
will support online and offline modes so that different forms will be
started if the database can not be contacted. So, during the module startup,
I run a form that displays a staus bar and that form opens a new thread that
tests the ability to connect to the database. It then sets a variable that
tells the program which mode it is in.

What really has me confused is the fact that I can call the login box form
several times at the end of the module and it will stay open each time, but
anything else will close.

I thought about starting the Form1 and setting the opacity to 0 while the
login for runs, but it is a bit sloppy to me.

"Cor Ligthert" <no************@planet.nl> wrote in message
news:uq**************@TK2MSFTNGP15.phx.gbl...
Herfried
Mhm... Why should the main form be loaded if there is no guarantee that
it will be shown at all? If the login form is shown, why is it shown
modally if there are no other forms open?

Probably it is not even loaded.
This are the first instructions.

However why not?

And even when it takes time, when it is an unauthorised action than it

will even stop the ones when it takes time.

(And authorised it cost nothing more).

However why not?

Cor

Nov 21 '05 #10
Shawn,
I thought about starting the Form1 and setting the opacity to 0 while the
login for runs, but it is a bit sloppy to me.

Why as long as you do not tell Form1.show somewhere it will not be showed.

Cor
Nov 21 '05 #11
>>
Why as long as you do not tell Form1.show somewhere it will not be showed.

Or it should be your main form in the way I do it, than it will be showed
directly after that the Load event is processed.

Cor
Nov 21 '05 #12
Well, I took your advice and started it from Form1. I set the opacity to 0
so it would not show and set a shared variable that changes from 0 to 1 when
the logon box is gone. I then set a timer to run and check that variable
after the other forms close. If the variable is 1, then the opacity is set
to 100 and the form shows. This is not as clean as I was hoping, but it
works fine.

Thanks for all the insight guys!!!

Shawn

"Cor Ligthert" <no************@planet.nl> wrote in message
news:uk**************@TK2MSFTNGP10.phx.gbl...

Why as long as you do not tell Form1.show somewhere it will not be showed.

Or it should be your main form in the way I do it, than it will be showed
directly after that the Load event is processed.

Cor

Nov 21 '05 #13
Shawn,

That opacity setting should not be needed. I really do only

Private sub load form
dim frm as new loginform
'
'
me.close when wrong.
end sub

The main form is never showed.

Cor
Nov 21 '05 #14

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
3333
by: Eric Cadwell | last post by:
We're running Load Runner to test a large 1.0 based WinForms application. I'm getting the following exception when opening and closing a form 400 - 450 times. The form contains several controls and...
4
2615
by: Jelmer | last post by:
Hi I've been trying to create an addin similar to Find & Replace from Rick Fisher that looks thru your tables / queries / forms / modules etc.. for a reference to a string and optionally let's you...
9
1289
by: BLUE WATER | last post by:
Help, When I am finished entering in data into my form A, I press the save button that saves this new data to a new record. However I would like my other form to open at a specific record, the...
3
3066
by: Mike Wilson | last post by:
Is there a way to open an OLE DB database from within Access? I would like to use the Access GUI with its table and query explorer to examine a database only available through an OLEDB provider...
3
9171
by: MartinR | last post by:
Hi, I'm still new to writing code in vba as I've only been introduced to access three weeks ago. I have written this code below and it executes but does not do what I want it to do. What I want is...
1
1649
by: robertmeyer1 | last post by:
Hey, I am having a problem with opening some forms. I have several forms. The forms are based off the same table, tblClient. Each form has a sbf inserted into it. These sbf’s are each based...
11
12783
by: Tony K | last post by:
I have a MDI application. On the menu toolstrip child forms are selected from one of the menus. I don't want to play the disable/enable menu item game. I have selected that open forms are added...
1
4613
by: Mucker | last post by:
This could be a difficult one, so please bear with me. I've an assembly containing Delphi 2006.NET forms. A C# app, via reflection opens these forms . This works fine - I've a C# app, opening...
2
2296
by: John | last post by:
Hi I have a number of forms which open like this; Dim frm1 As frmForm1 = New frmForm1 Dim frm2 As frmForm2 = New frmForm2 Dim frm3 As frmForm3 = New frmForm3 Dim frm4 As frmForm4 = New...
2
4215
by: =?Utf-8?B?RXRoYW4gU3RyYXVzcw==?= | last post by:
I am (still) relatively new to Windows applications, most of my experience has been Web based, and I am confused about what exactly happens when the Main() method is called and how to manipulate...
0
7223
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
7319
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
7376
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
7485
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
5623
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
3179
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
1542
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...
1
760
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
412
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.