Multithreading - Form Will Not Close If Another Opens
Nov 5, 2010
I have a form that opens a other form in multi threading but after that it wont close I have tried:
application.exit (Works but closes the whole app)
me.close (nothing happens)
end (nothing happens)
me.hide (nothing happens)
This form is form1 that wont close and opens form3 I every other form works.(7 forms total)
I have two forms. The first one opens the second one after all fields are filled out successfully. The problem I am having is I want to close the first form when the second form is displayed, but every time I try using frmCustomer.Close() when the second page (Result) loads, it completely closes the entire application.What am I doing wrong? What is the correct way of doing this?
If i start a BackgroundWorker or 2 then after some time goes by and i've done things on the main thread what happens when from the main thread I call:
Me.Close?
Application.Exit?
End?
Also if I spin of a Thread: (New Thread(addressof ThreadProc)).start - or however it is, does that thread behave the same as a BackgroundWorker in the above scenarios? the real JeZteR My New Blog: [URL]
I have a main form that has a button with which a smaller form is shown. Think of the smaller form as the Find/Replace dialog in many applications, such as Notepad. It's important that the form is (what I believe is called) modal. What I mean is that it always stays on top of the main form. I ensure that by calling the Show method with "Me" as the owner argument. Whenever the small form loses focus it will not disappear into the background but stay visible (albeit out of focus). If you don't understand open up Notepad and have a look at the behavior of the Find/Replace dialog.
Here's my problem: instead of actually closing the form when the X is pressed, I want it to simply Hide itself, so its position and the state of any controls (checkboxes etc) is preserved automatically.To achieve this I simply cancel the FormClosing event and Hide it:
vb.net Private Sub Form2_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
[code]....
To show the form, I use the following (note the (Me) to make the main form the owner of the form; this ensures that it remains visible even when it is out of focus):
vb.net Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Form2.Show(Me) End Sub
Now. When I run my project, and open the Form2 (small form), then hide it again (by 'closing' it), I can no longer close the main form (Form1)! It seems the main form cannot close when the small form still exists (albeit invisible)...?? When I don't use the Me argument in the Show method, I don't get the behavior I want. I know I can set the TopMost property to True but that will also cause it to become visible on top of all the other forms, even windows not part of my application.
I have set up a notify icon for my form. I want to make it so that when the user clicks the close button that it doesn't close the form it just takes it to shows the notify icon. They can exit the program from the notify icon. Can someone tell me how to keep it running?
sometimes, when I use Form.close() when debugging my program, although the form is closed, the application is still running. I noticed this behaviour when using the msgbox function.
I have a form ( call it NewForm ) that can be opened from many other forms, but I don't want to have the user to run into the problem of having many windows/forms open.I want to close the calling form and open NewForm.NewForm will prompt the user for information, but if the user doesn't find what they are looking for I want to have a "Cancel" button on the form. With the "Cancel" button I want to go to the previous form.is there a way to tell which form called NewForm so I can just reopen/unhide that form/window.
I try to transfer a vb6 application to vb2010. In the vb6 I start with a login panel that the user enter uid and password autenticate with the DBServer if ok show application main menu and close the login form. the order of the me.close() after the mainform.show() does not change, The application ends.
When I initialize a new form to open, the subroutine in the new form starts before the new form is shown on the screen and so when the subroutine finishes and the MsgBox comes up, the form isn't showing.
Is there a way to make the form pop up first before the subroutine starts?
I am using VS 2008, Windows XP R3, and Visual Basic.When I open some forms in the form designer, (In Solution Explorer, right click on the form, then select View Designer) the form always opens as Edited. An Asterisk "*" appears after the form name in the open window tabs. If I open the form to just view the code (In Solution Explorer, right click on the form, then select View Code), the form opens normally. This happens for just some forms.
It always happens for the same forms, and never happens for the other forms. What I am missing in those forms where the designer always thinks the form has been edited?
When opening a button and opening a new form as soon as it opens it close for some reason but its not giving any errors as to why its doing this now I've checked the linked linking it to the next form that's fine.
Private Sub PrintPerscription_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Login.con.Open() sql = "SELECT Patient.* FROM Patient where Patient.Wardno = " & Login.WardNo.ToString da = New OleDb.OleDbDataAdapter(sql, Login.con) noOfRows = da.Fill(dsPatient, "Patient") [Code] .....
I have a situation where me.close() doesn't close the form. I have a form with a button with the code seen below. What happens when the button is clicked is the new form shows, but the original form(calling form) is still there. When I go into debug mode, I can see the me.close() execute, but nothing happens (calling form stays open). When I close the second form both forms close. If I comment out the call for the second form to open the first form closes without problem.
Private Sub cmdNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdNext.Click Dim f As New frmOrder3
I am new to these forums. I had a VB.net class several years ago and cant seem to find this info in the text from the book used in the class. Here is what I would like to do. I have a 2 forms. One with three buttons and the other with a listbox. When I click on one of the three buttons (on form1), I want to fill the listbox (on form 2) with one of three arrays. is this possible, it seems like it should be.
I need to create a program that requires password entry. I was thinking of having a form that the user uses to set the password that only opens once (unless a button on the main form is clicked to reset the password.) once the password has been set, the form closes and another opens to enter the password and for each and every time the program is run. Another thing is that if the password has been entered wrong 3 times, the program gives a message box and closes on the ok button.
I am creating a form and I have a label that will display the user's name, but what I need to do it trigger a text box when the application opens that will allow the user to type in their name and then assign that value to the label in my form. How do I trigger the text box and assign the value to my label? My label is named lblStudent.
I am creating a program that has many text boxes and labels on the form. I want to be able to edit fields close the program and open it up so that the form opens with the last editing I did in the fields.
I'm trying to set my software up so that when I check the checkbox for winRAR to be installed, it'll pop up a new window asking if I want to install the 32 bit version or the 64 bit version. I have no problem getting the window to show up but than if I try to exit out of the window and than uncheck the box (in case it was accidentally checked) it'll just open the window again. I am thinking I have to tell vb that when I uncheck the box it shouldn't do anything.
Here's my code. (I know that the Nothing under the Me.chk_rar.Checked = False doesn't work but I left that blank once and it just opened a bunch of windows and crashed my system. I know it says "E:Music" right now but I just pointed it there so that there was something there normally it'll point to the other window. If I need to created a new Form for every little window that I have for instance the little window that I want to pop up, do I need to create a new form just for that little window to ask which architecture is needed and than giving the options for 32 bit or 64 bit.
Private Sub chk_rar_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chk_rar.CheckedChanged Me.chk_rar.Checked = True Process.Start("E:Music") Me.chk_rar.Checked = False Nothing End Sub
I am using VS 2008/VB with Access 2007. I have 2 forms that I use to create entries. In the first form (fomr1) I select the type of entry which opens the respective form (form. In form1 I use some code to read through a oledbreader the id rows and get the max value in that column. I take that value and I add 1 to it and then assign the value to a textbox in form2. The whole process worked fine until today which gives me this exception "An error occurred creating the form. See exception.innerexception for details. The error is Object reference not set to an instance of an object. "
I am trying to autoselect pre-programmed items in a listbox when a form opens with the control on it.but i cannot find a proper method to select all the items in the listbox and hold the resulting text as a string that will later be saved to a text file. i do not need help with saving the text to file but rather selecting the items in the listbox.so, after alot of trial and error and no luck I think I am supposed to use
ListBox.ObjectCollection
propriety. but i have no clue whats so ever in how to manage to select all the items in the listbox when this form opens...if this does not make sence then I will rephraze it.
I am trying to build a form that has a button on it that will open up a 2nd form that allows me to view and edit the connection string. I believe the connection string is also called app.config, and can see that in the Solution Explorer for the project.All I have managed to do is drag a button onto my main form and relabel it. I have no idea how to create code to access the connection string.
I created primary/start up Form for my VB2005 app (called Admin.vb). Now when I go back to the solution explorer, I can see Admin.vb but it doesn't have the form icon and clicking it doesn't open the form. Instead it opens the code.All of my other forms are fine and have the right icons and open in the [Design] view ...The form obviously still exists as it opens in runtime but I can't seem to open the design view for it.
I am having Socket server, and I have two forms. One is the main form for the server and the other one is a custom made messagebox. When a request comes to the server the main form has to invoke the second form (messagebox). When the main form is open for the first time everything works fine. But when I close the main form without closing the application and open it again and request comes to the server the custom made messagebox opens but it freezes and looks like this:
I currently have a program that I made which opens other apps packaged with an installer. I have set the installer to install everything to the Program Files folder. However, not all computers have a C: hard drive. I have a way in which they can enter their drive letter in one form then in the next form it remembers the drive and will take them to the program. The problem is my program stores the drive letter in an xml file. On the startup of the program it looks in the xml file to find the drive letter, if there is no drive letter the form opens then lets the user set his drive letter. The xml file is stored in the folder "Math Wizard" in the Program Files folder. But if not all computers have C:Program Files I need a shortcut to the program files folder. I have been trying to use %ProgramFiles% (%Program Files% + "Math Wizardconfig.xml") but vb is saying that the % is an invalid character. Here's my code: