Forms :: ToolStripStatusLabel And Threading?
Feb 12, 2009Forms :: ToolStripStatusLabel and threading
View 7 RepliesForms :: ToolStripStatusLabel and threading
View 7 RepliesI have an application with two forms - a splash form and the main form. The main form reads an XML file and displays data from the file in a rich text box. While that is happening the splash form is displayed. When the main form is ready to be displayed the splash form closes and the main form is displayed. I have a progress bar on the splash form to inform the user of the progress of the load. I want to set the maximum value for the progress bar to the number of elements in the XML file. In the main form I am using a reader to count the number of elements. After I get that number I wan to update the maximum on the progress bar control so it displays correctly. That is where I am getting the cross threading error. Now I could do that in the splash form. But where the real issue lies is I want to update the progress bar value every time I read an element in the main form process to read the XML file. That I don't think I can do in the splash form as it would duplicate the process of the main form and defeat the purpose of the splash form.
I have researched this issue but can't find an answer. I have tried the delegate route but I still get a cross-threading error. I assume that is because I am cross threading across forms.
I have a frm_Main, which starts a thread. The thread then goes and calls a module, which has a thread.sleep() in it. This causes the mouse to freeze up while it sleeps, despite being called by the child thread. I thought this would have be on the thread time-slice? However it is causing my form to freeze for the sleep duration.
[Code]...
I'm trying to dive into what I consider a deeper end of VB.net to see how far I can go with it. I have a project created, ironically called "My First Server". The aim of this is to create a server which can handle multi clients but additionally isn't the commonly shown tutorial setup of a console application. So it is created as a Windows Form application. The main form (Public Class PrimaryForm) consists of only one control which is a listbox control. This is named LogOutput.
[Code]....
When it comes to threading. I've managed to adapt one of JMcIllhinney's backgroundworker codebank examples to somewhat suit my needs, but not completely. I have a main form, and a second form that appears while I'm running through a for loop. It informs the user what is currently happening. I set up a backgroundworker that allowed me to continue to use the main form during the for loop, but the other "status" form was completely frozen, and any labels or graphics were shown as white boxes. I am struggling to figure out how to be able to move/interact with both forms while the loop is running.
View 4 RepliesCurrently, I am copying files via a for loop. Each time a file copies, I increment a progress bar that is housed in the ToolStrip. This works. What doesn't work is updating the text of a label each time a file copies.
View 5 Replieswhy my ToolStripStatusLabel does not become visible when i run this code
But does become visible if I place it at top of code before openfiledialog?
Will Not Become Visible
Private Sub OpenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OpenToolStripMenuItem.Click
OpenFileDialog1.InitialDirectory = "c:"
[Code].....
I've created an MDI application, on which I launch a macro using a tool bar button. The Sub is located in a module and I don't manage to udpate ToolStripStatusLabel from that sub.My MDI form is called "MDIParentMain"and I use the following code to make changes on oolStripStatusLabel (called "statuslabelMDIProgressbar"):
Sb test
Dim myform As MDIParentMain
[code].....
I have an array of picture boxes with images. I want the status bar to change when the mouse enters the image. I am stuck on displaying the correct text when the mouse is over a pictureBox.
hr1StatusText is an array of text read from a text file. Everything works but I can't figure how to iterate through the text for the status bar.
The code below works displaying the text for all PB's as long as the index is changed. What I am looking for is to display hr1StatusText(0) for PB(0), hr1StatusText(1) for PB(1), etc.
Public Sub Tile_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.MouseEnter
Dim TileMouse As PictureBox = DirectCast(sender, PictureBox)
ToolStripStatusLabel1.Text = hr1StatusText(0)
End Sub
I'm trying to set the text of a ToolStripStatusLabel in a form, wich contains some ToolStripStatusLabels, a ListBox and a button. I'm setting the text from a BackgroundWorker wich is started from a timer. I thought this would be okay. Well, the problem is that sometimes it works, and suddenly after a while, I get a cross-thread error wich says:
"Cross-thread operation not valid: Control 'ListBox1' accessed from a thread other than the thread it was created on"
Well, where did the ListBox get involved in this problem? The code breaks on this line:
ToolStripStatusLabel3.Text = "Henter data fra eTime-basen..."
So, what am I missing here? I've never encountered this before in any way. I'm only using the ListBox later in my BackgrounWorker, and each time I'm using it I'm checking the InvokeRequired-property to avoid problems with threading.
I'm trying to edit the text of a toolstripstatuslabel from a module in my project, but whatever I do, I can't change it. [code]But that didn't work either.I tried to change If Me.StatusStrip1.InvokeRequired Then to If Me.InvokeRequired Then, but that didn't help either. I also tried to change the modifiers property of the toolstripstatuslabel to public, with no result.
View 4 RepliesI was wondering if you can give me a code that will show hyperlink in toolstripstatuslabel.text when mouse over on a link.
View 1 RepliesI have a few forms that have a lot of really intensive updating along with a great deal of user interface (text boxes, button clicking etc) Is it possible to open a separate form as a separate UI thread from the start up form that called it to "show" or open or whatever the new method might be?
View 6 RepliesOn my program I am trying to make a ToolStripStatusLabel's text change to "connected" if connected to a network and if not connected to a network change the text to " Not Connected" then I don't know how to display a image if connected to a network or not connected. So if the computer is connected to a network I have a image that I would like to be displayed next to the ToolStripStatusLabel. And if not connected to a network, can the program display a different image? I tried this:
My.Computer.Network.IsAvailable=True(ToolStripStatusLabel2.Text "Connected")
My.Computer.Network.IsAvailable=False(ToolStripStatusLabel2.Text "Not Connected")
I am trying to send emails on a button click ...but I want to send the emails in the background as the number of emails are too many...so I am using threading.
[Code]...
I have a program that I would like to implement using Threading.I wand to load a form that takes a couple of minutes to open using threading.Here is my code
Imports System.Threading
Public Class frmAdjustments
Function LaunchForm() As Integer[code].....
I am new to .net programming and could use any suggestions you may have. I'm trying to grasp the concept of multithreading apps and would like to have both my main form (Adjustments) and the (frmNewAdjustments) form to load concurrently.Here is the error I receive with the code above: Overload resolution failed because no accessible 'New' can be called with these arguments:
i'm trying to do a database search in my WPF program. And to give the program some speed, I want to use Backgroundworker or Threading. The problem is that i have to invoke the controls that the new thread is going it access. But i don't know to do this and i don't know i which event to put the code. Here is some code:
[Code]...
I need to be able to call a C++ dll that takes a long time (possibly infinte, it relies on user input)to execute. Im calling this through VB. My VB GUI freezes up when this happens, and I would like to keep the GUI responsive, so that the user can stop this possibly infinte loop. A bit of background, the C++ is trying to keep score on a snooker table using a webcam, and while the VB scoreboard updates easily, I would like to script it so that the analysis is almost continuous, while still allowing the user to interact. Currently the project requires the user to press a button to start the shot analysis, but it would be preferable if the program scripted itself. I have only realised this problem now and the deadline is very soon.
Update: Our lecturer suggested an option to solve the problem, but it would appear that most options here and the one he suggested will not work for us as the processing time required for the webcam image capture is too great to handle due to hardware constraints.
I have the following code. My program loads 20 pictures in one panel and each pictures has for the moment like 500 Kb, but in the future they shall have like 2~6 Mb.When I use this part of code, my program that uses only 6 Mb of memory, but jumpes at 202 Mb when pics are loaded. I need a method to resize or make them thumbnail or something to reduce the memory.I don't know for the moment how to use the System.Threading, but I want to know if it shall help my program, if not, then help me replace parts of my code.Private Sub PanelPictures(ByVal picsoriz As Integer) ' picoriz represents how many pictures should the panel have on each row (it's set at 5 pictures per line/row) [code]
View 4 RepliesI have a program that I would like to implement using Threading. I wand to load a form that takes a couple of minutes to open using threading.
[Code]...
SMS Multi Threading
View 4 RepliesI have a VSTO application, rendering a word documement. At each stage of the rendering a popup window is getting displayed. What we have done is displayed a popup window, and at each stage of the rendering the text is made Changed. I need to display the window using multithreading. How to achieve this.
View 1 RepliesI'm trying to understand how to handle db connections in a multi-theaded windows program.It I have this simple class:
public class MyClass
private myConn as new sqlconnection
private MyThreadPool(5) as Thread
[code]....
I have an app that the user selects a database and the user tables are displayed in a listbox. The user selects which tables to export to an Excel workbook, one for each table. There is a richtextbox that informs the user when the created files are done.
The app works and the xlsx file are created as expected. The problem is when each is finished only the last file of the selected tables is displayed in the RTB.
The form has the following Handler
[code....]
The threading is done in the following
[code...]
threading in diffirent class?? I get an example like this
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim NewThread As New Thread(AddressOf Counter3)
[code]....
a thread at example above was written in one class, now how to make a same thing like that with a different class?? and one more thing if you click the button twice then it have two proses.
how the threading within vb actually works. am i of the understanding that every time you create an event, through a button control for instance, that this infact creates a seperate process which will run independantly to another. say for instance you had two buttons on a form and each contained code which took 5 seconds to execute. if i were to click one button into action and then the other with a second, would the two processes run alongside one another or would i have to wait for the first code to execute before the second button could be executed?
View 13 RepliesI am communicating with a USB-HID device. It will successfully complete hundreds of send-receive requests but occasionally get a Null Exception error.
[Code]...
at the rxData.dataPacket(i) = element I will get a NullReference error every now and then. I could enclose it in a try/catch statement, but I'd like to fix the root problem if possible.This device is communicating to microcontrollers, and it is possible that they won't always give a value... but my feeling is this is some sort of UI threading issue. When debugging, even though there is a null exception, many times there actually does seem to be data in dataReceived.data.ToList(). Is there an easy way to place the whole data processing routine on a thread separate from the UI?Edit: Changed code to match answer and give more info on where it is used. Still get NullReferenceExceptions after about 1,000 completed send/receive requests to the HID device.
I have a problem. I'm creating a new thread, which should do some stuff and update a text box. But, when I test my program, the main (UI) thread is doing all the job, even though I declared and started a new thread.
[Code]...
I even made another thread for testing purposes, but it was the same.
I'm developing an adding for office powerpoint application.I'm trying to display a description of the object(Customized object) currently dropped on the powerpoint slide in design mode(Design mode of the powerpoint).When i click on my addin the related object description will be displayed on a tabbed window as the first tabpage.
There is a button on the tab page, and when i click on it i need the description to get copied to windows clipboard.I tried this using clipboardclass it throws the following exception, System.Threading.ThreadstateException {"Current thread must be set to single thread apartment (STA) mode before OLE calls can be made. Ensure that your Main function has STAThreadAttribute marked on it."}
Code for clipboard:
Clipboard.Clear()
Clipboard.SetText(lblObjectID.Text)
I searched the net for a solution and got couple of answers like, Put [STAThread] in the main function Thread.CurrentThread.SetApartmentState(ApartmentState.STA) Immediately before your call to SetDataObject.
But I'm not sure where to put the 1st one and the 2nd option didn't work.
I'm using vb.net 2005, I've got the following code running a thread to download a file. However, the process fails sometimes when trying to read the local copy of the file. I think I may need to unlock the local file somehow but I'm not sure how to do this.[code]
View 1 Replies