473,466 Members | 1,368 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

Open Another form and close itself in vb.net

For example, I create Login form first. When user login, it open the main
form and close the login form itself.
Nov 21 '05 #1
10 33356
"Alex" <Al**@discussions.microsoft.com> schrieb:
For example, I create Login form first. When user login, it open the main
form and close the login form itself.


\\\
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://dotnet.mvps.org/dotnet/faqs/>

Nov 21 '05 #2
Why does the following slightly modified code cause an exception to be thrown
on the Application.Run Line?

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

In Form1 button 'Click' event handler:

Dim f2 As New Form2()
f2.ShowDialog() Note after return from this Dialog, an exception is thrown.
"Herfried K. Wagner [MVP]" wrote:
"Alex" <Al**@discussions.microsoft.com> schrieb:
For example, I create Login form first. When user login, it open the main
form and close the login form itself.


\\\
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://dotnet.mvps.org/dotnet/faqs/>

Nov 21 '05 #3
Dennis,

"Dennis" <De****@discussions.microsoft.com> schrieb:
Why does the following slightly modified code cause an exception to be
thrown
on the Application.Run Line?

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

In Form1 button 'Click' event handler:

Dim f2 As New Form2()
f2.ShowDialog() Note after return from this Dialog, an exception is
thrown.


I am not able to reproduce that on my machine (.NET 1.1 SP1, Windows XP
Professional SP2). What exception is thrown? Can you post the complete
error message?

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

Nov 21 '05 #4
Herfried,

What is the deeper reason that you use this code forever.
\\\
Public Module Program
Public Sub Main()
Dim f As New Form1()
f.Show()
Application.Run()
End Sub
End Module
///


(This is a serious question)

Saying it in otherwords what is in your opinion the advantage above the
build VBNet method in a windowform project.

Cor
Nov 21 '05 #5
Cor,

"Cor Ligthert" <no************@planet.nl> schrieb:
What is the deeper reason that you use this code forever.
\\\
Public Module Program
Public Sub Main()
Dim f As New Form1()
f.Show()
Application.Run()
End Sub
End Module
///


(This is a serious question)

Saying it in otherwords what is in your opinion the advantage above the
build VBNet method in a windowform project.


The built-in possibility of setting the startup form doesn't provide a way
to call 'Application.Run' without passing a form to it. In other words, the
'Sub Main's code is generated by the compiler automatically and doesn't give
you the control to do that. The code above does not suffer from the problem
that closing the main form closes the whole application because it's lacking
a message pump after the startup form has been closed.

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

Nov 21 '05 #6
Herfried,

The only argument I read here is the aspect of clossing the mainform, where
I see no reasons for, but I will not tell direct I disagree about that.

However than has the main really to be the main of the project and than
should there not be any form call from another place in my opinion. I think
that any tree structure inside a form node than is not right.

The load event in a form does so nice everything before the showing of the
form. Your arguments about this looks for me more something of behaviour
from an old VB6 programmer who is afraid that they will change that nice
behaviour again (Or maybe it was already like that, I don't remember it me
anymore).

However just my thought of course.
And feel free to do it your way.

Cor
Nov 21 '05 #7
Cor,

"Cor Ligthert" <no************@planet.nl> schrieb:
The only argument I read here is the aspect of clossing the mainform,
where I see no reasons for, but I will not tell direct I disagree about
that.

However than has the main really to be the main of the project and than
should there not be any form call from another place in my opinion. I
think that any tree structure inside a form node than is not right.


It seems to me that you didn't get the point of what I am saying.

The application is started.
'Form1' is shown.
'Form1' is closed.
'Form2' is shown.
'Form2' is closed.
...
The application terminates.

How would you do that without a custom 'Sub Main' and without using ugly
'ShowDialog' hacks?

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

Nov 21 '05 #8
Herfried,

It seems to me that you didn't get the point of what I am saying.

The application is started.
'Form1' is shown.
'Form1' is closed.
'Form2' is shown.
'Form2' is closed.
...
The application terminates.


When this is consequently done, I said that I agreed (however than no shows
inside a form).

:-)

Cor
Nov 21 '05 #9
If I try a simple example it seems to work OK. However, my application is
too complex to post here. I did find out that if I delete a line of Code I
had, "Application.EnableVisualStyles()" in my sub main, my application works
ok but with this line of code in sub main, it throws an exception when Form2
closes. It does seem to work OK with a simple example however. Maybe it's
one of the controls that I have on my Form1 such as splitter bar, panel,
toolbar, listbox, treeview, etc. Anyway, I'll live with out VisualStyles for
now until I get time to see exactly what's casuing the error.

Sub Main
Application.EnableVisualStyles
Form1.Show
Application.Run()
end Sub
"Herfried K. Wagner [MVP]" wrote:
Dennis,

"Dennis" <De****@discussions.microsoft.com> schrieb:
Why does the following slightly modified code cause an exception to be
thrown
on the Application.Run Line?

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

In Form1 button 'Click' event handler:

Dim f2 As New Form2()
f2.ShowDialog() Note after return from this Dialog, an exception is
thrown.


I am not able to reproduce that on my machine (.NET 1.1 SP1, Windows XP
Professional SP2). What exception is thrown? Can you post the complete
error message?

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

Nov 21 '05 #10
"Dennis" <De****@discussions.microsoft.com> schrieb:
Anyway, I'll live with out VisualStyles for
now until I get time to see exactly what's casuing the error.

Sub Main
Application.EnableVisualStyles
\\\
Application.DoEvents()
///
Form1.Show
Application.Run()
end Sub


Maybe this fixes the problem.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://dotnet.mvps.org/dotnet/faqs/>
Nov 21 '05 #11

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

Similar topics

4
by: KS | last post by:
Is it possible to write a javascript that makes a popup window when someone click on buttons/href on my page and close itself when the new page is about to get loaded? I want to prevent the user...
1
by: Jules Winfield | last post by:
My WinForms application can have any number of top level forms open at a given time. If the user selects File|Exit, all of the forms are closed. The loop to close the forms looks something like this:...
1
by: Martin Douglas | last post by:
Hey guys, maybe someone can help me with some MDI issues I have. A co-worker asked me a very simple question, one that I blew off as trivial, and it has become a time-consuming issue. Simply...
6
by: blue875 | last post by:
Hello helper people who are smarter than me: I have a form that needs to submit multiple queries to different tables during one Sub's execution. Some sections are as simple as: 1| With rst 2|...
3
by: kev | last post by:
Hi folks, I have a form for registration (frmRegistration) whereby i have two buttons. One is Save which saves record using the OnClick property. I used wizard to create the save button. The...
5
by: Andrew Morton | last post by:
Is it possible to make a form deactivate itself without minimizing it? I have written a small utility which copies selected files from CDs (hundreds of them). I put a CD in the tray and click a...
14
by: keri | last post by:
Hi, Simple version of the question..... How do I use the where clause of the open form command to show an account with a matching ID to be displayed when the form is opened? Eg. I select a...
4
by: sheldonlg | last post by:
Does anyone know how to open a window and have it close by itself? You may ask why, but here it is. I want to have it open (a php script), run that script, and then close itself. I have an...
6
by: dotnetnovice | last post by:
Hi everybody. I need some help in c# forms problem which is i have three forms naming main form,form1 & form2. main form is the mdiparent of both form1 and form2. i also have a toolstrip in my...
29
sueb
by: sueb | last post by:
I have a little form that I want to: 1. accept a new primary key (chart number) (this is the only field on the form), 2. add a new record with this primary key, 3. open the main form, and 4....
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
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...
1
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
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
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
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 ...

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.