VS 2008 Rendering Graphics With A BackgroundWorker

Apr 30, 2009

I am trying to make a graphics program with mousewheel-controlled zooming using GDI+. My plan is to provide rapid feedback, such as a low resolution render or even just a bounding rectangle, followed by a full resolution render as soon as possible afterwards. It seems logical to me to try a BackgroundWorker for the latter task. This is my first attempt to use one of these, or any other way of multithreading for that matter. Mousewheel events can follow one another much more quickly than I can render to the screen. That means I need to kill any rendering process that is already running and start a new one with the latest value of the zoom scaling factor.[code]The above class coexists with a DrawingSurface class, a UserControl which listens for the ProvideFeedback and ScaledImageReady events and paints the image accordingly. It also raises mouse/keyboard events for the zoom and other tools to deal with. My problem arises in the DO loop waiting for Cancellation to finish. The zooming routine works for one or maybe half a dozen renders, depending on the image size, but then it hangs in that loop and never comes out.

View 2 Replies


ADVERTISEMENT

Rendering Graphics Efficiently - DirectX - Graphics Card And Use Of DirectDraw Or OpenGL

Sep 23, 2011

We have a GIS application that has some performance issues. It creates and sends an image to a web browser. We start with a Bing Maps imager, add complex polygons (complete with transparent fill), save the finished image as a PNG, and send it to the browser.

The idea has come up that we could possibly install a graphics card and use DirectX or OpenGL to improve performance. I believe this would be the case even though we ultimately generate an image instead of sending the data the the screen. I believe our processes could still make use of the API and the hardware acceleration it provides. Our process is not unlike what CGI film makers do to render individuals frames of a film, though we simply render a single image and send it, as opposed to the hundreds of thousands of images needed for a single CGI film.

So my question is: would a powerful graphics card and use of DirectDraw or OpenGL provide us a worthwhile performance boost? It can take us 20-30 seconds to render a more complex map. Which is a long time to wait on a web page...

View 10 Replies

Interface And Graphics :: Better GDI++ Font Rendering In A Web Browser

Dec 3, 2008

I am looking at using the better GDI++ font rendering in a web browser I'm making with VB2008. I want to retain the IE web browser component (the default one) but have all text rendered through GDI++ to give a more Safari-like look to the text.What I want to know is, is this even possible? And if so, how complex are we talking?

View 2 Replies

Interface And Graphics :: Speed Difference From VB6 - In Pixel Rendering

Nov 24, 2008

I made a graphics program in VB6... I then wanted to remake it in VB.NET (I believed it would be faster).

To convert it I wrote both the VB6 and VB.NET versions from scratch side by side. What I have found it that the VB6 code is MUCH faster than the VB.NET program... which I can't understand... (Please note that when not rerendering it in VB.NET it is much faster than VB6)

Here is the VB6 code

[CODE]:...............................

How do you do this in VB.NET?

EDIT: Also... why do I have to multiply Me.ClientSize.Width by 3 for it to be the right size... it doesn't seem to add up.

EDIT2: The smaller the radsize the more efficient VB.NET is compared to VB6... so perhaps it has something to do with the setpixel in VB.NET

View 2 Replies

[2008] Usercontrol Rendering On Wrong Control?

Jan 18, 2009

I've built my first usercontrol for use in a GPS Mapping forms app.

pic1 shows "panel1" containing some picturebox "tools" with a map(another panel containing a picturebox) underneath.

Pic2 shows that I dragged the map and the "tool" have not moved with the drag.

"panel1" also contains my usercontrol( this will show a transparent map scale). My usercontrol and all the "tools" definately have the same parent - ie "panel1".

If I resize the form to cause a re-paint of all the controls I get Pic3 - the red T bar (my usercontrol) will be the map scale.

Everything looks OK until I drag the map - the user control goes with the drag. Pic4 shows that the usercontrol image has been erased as it passed under the "tools".

I don't understand why the "tools" stay put and on top of the map and the usercontrol does not - even though they all have the same parent.

View 3 Replies

VS 2008 - Rendering Images When Changing Active Layer

Aug 6, 2010

I'm working on my second project; a layered image displayer.
It works like this:
- The user adds a new "image layer"
- The user can set the texture, image, size, rotation and color
- This all can be done using a selection square and some dialogs

It all works fine, but I found that there is one thing still unclear to me:
- Can you render layers without totally starting over (refresh) on every change?

As example, I have 200 image layers. I change one image layer somewhere in between them, and the program has to refresh all those images. (1 - 200)
This takes awfully long.

Now I found a small solution; I gave all layers a "finalimage" so it can render a single layer. Next I used, in the program, a back, active and fore layer. This way the program only has to render 3 images when changing the "active" layer. When you select another layer, all 3 layers will refresh. (with all those 200 layers).

Here is the code to get an idea:
Dim OLDINDEX As Integer = -1
Dim BackLayer As New Bitmap(800, 600)
Dim ActiveLayer As New Bitmap(800, 600)
Dim FrontLayer As New Bitmap(800, 600)
Public CurrentIndex As Integer = -1
Public PerformGlobalUpdate As Boolean = False
[Code] .....
It all works fine, but the only problem now is that it takes ages to select a different layer.

View 39 Replies

Resource File ( Resx ) Editor Not Painting / Rendering In Visual Studio 2008

Jan 18, 2010

I have Visual Studio 2008 SP1 installed and lately it is taking longer and longer to bring up a Resource File (.resx) in its standard editor. Some of the file loads up, but you can see that the screen does not paint/render it 100%.I tried doing some searching on the web and the only thing I came across was doing a edit to the GDIProcessHandleQuota registry entry from 10,000 to 20,000. This appeared to work initially, but the problem came back the next day.I am doing an extensive localization project and this is severely limiting the amount of work I get done.

View 2 Replies

Cancel Backgroundworker - Got The Error Message" This BackgroundWorker Is Currently Busy And Cannot Run Multiple Tasks Concurrently?

Dec 14, 2009

in my button click event i ececure

If BackgroundWorker4.IsBusy Then
BackgroundWorker1.CancelAsync()
End If[code]....

after proceess completed if press the button again.i got the following error msg

This BackgroundWorker is currently busy and cannot run multiple tasks concurrently.

View 6 Replies

VS 2008 - BackGroundWorker Freezing My App Up?

Mar 8, 2012

I was messing around with the listview Control first,, And when i got it working i thought what's this backgroundworker thing,,so i read up on what info MS had on the MSDN page..and slapped it in here..and i thought i had it working ok until i tried to move my project application to the side to reply to a instant message i got..and then i noticed that it froze up .and looked like it was using alot of system resources,But wait let me back up just a bit.originally i was trying it with a fairly small number of items, and then i seen on here where someone had posted a rather large index for testing his app with,,and while trying to load that list that's when the issue was noticed i don't really plan on loading a list as big as that test index was but, I would still like to know why the program did what it did using the code below.I'm not really asking for it to be too altered, i kinda like all the controls i have in it the moment,, and the way it loaded as well.

[code]...

View 8 Replies

VS 2008 : Run TreeView In BackgroundWorker?

Jan 24, 2010

I am getting a list of computer on my network. I want to run this code in the background but I keep getting an error. How do I delegate the TreeView.Error :The action being performed on this control is being called from the wrong thread

Dim rip As Integer
For rip = 1 To 254
Application.DoEvents()
If My.Computer.Network.Ping(IPArray(0) & "." & IPArray(1) & "." & IPArray(2) & "." & rip, 60) Then

[code]....

View 3 Replies

VS 2008 BackgroundWorker And Dispatcher?

Dec 22, 2009

I'm trying to do some calculations with the backgroundworker and display a window with a loading animation on it. The calculation is working but the loading animation isnt moving.MeasurePolygons is the Sub that does the calculations and updates the variables to hold the values of the calculations which works fine. Its just the loading screen. It pops up as it should but just doesnt animate

Private Sub ClickEvent()
BackgroundWorker1.RunWorkerAsync()
If Window1.frmLoading Is Nothing Then

[code].....

View 18 Replies

VS 2008 BackgroundWorker And Progressbar?

Aug 31, 2009

I have to write a program that retrieve record from database, but everytime the screen will look like getting hang when getting large row record.I using the backgroundworker to prevent screen hang when retrieving record from database but why my progress not working when in progress? It only will show when the transaction done..

[Code]...

View 1 Replies

VS 2008 BackgroundWorker Vs Thread

Apr 17, 2012

I have some classes right now that I have that I reuse for Client/Server programming. I'm using Thread in these classes though for monitoring for things being written to the network streams and stuff like that. I'm just not sure if I should be using the background worker class instead. I'm also using TCPClient and Listener classes, should I be using sockets directly? I guess it would all depend on the flexibility I would need in a given application's specs.

[Code]...

View 3 Replies

VS 2008 Delegates And Backgroundworker?

Jun 4, 2010

I am having trouble with getting a delegate to work properly.Here's my

[Code]...

View 14 Replies

VS 2008 GetDirectories And BackgroundWorker?

Nov 11, 2010

i list all sub-directories in backgroundworker :

Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
If My.Computer.FileSystem.DirectoryExists(My.Settings.path) = True Then

[code].....

View 2 Replies

VS 2008 Run A Query In A BackGroundWorker?

Mar 19, 2009

I am trying to run a database query in a BGW to fill a DataGridView with the data that is returned by the query. The code I came up with works in that it executes the query & fills the DGV but it totally freezes the form & all controls on the form. Successive clicking on the form or any controls causes "Not Responding" to show in the title bar & I have to terminate the program from the IDE. If I run the query in a regular subroutine it works fine. Can somebody please review my code to see where I might be going astray? I've never used a BGW before so maybe I'm doing it all wrong.

[Code]...

View 6 Replies

VS 2008 : Backgroundworker Not Copying Files?

Jul 17, 2010

I don't have muc experience with backgroundworkers, but this is basicalmly what I want it to do:

- Copy files from a list
- Add Succes/Fail to a listview
- Report Progress

Private Sub BackgroundWorker2_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker2.DoWork
'2 groups
Dim Succes As New ListViewGroup("Succes")

[code]....

It doesn't copy the files, nor does it report progress.

View 3 Replies

VS 2008 Backgroundworker On Login Module?

Oct 11, 2009

How to make backgroundworker work on the login module??My form have progressbar with Marquee style...

Private Sub btnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogin.Click
lblProgress.Visible = True

[code].....

View 6 Replies

VS 2008 BackgroundWorker Thread An Updating UI?

Apr 3, 2010

I'm running some tasks on a BackgroundWorker thread and needed to display the current tasks in a label.Before adding the label, the tasks were completing just fine and the UI was responsive.Once I added the labels, the UI has become unresponsive. The issue, I believe, is the Invoke property.I've declared all my tasks, including the updating, in a sub and am getting the Invoke property of the label each time, in order to set the information.The following is an example of what I'm doing:

VB.NET
Private Sub Test()If lblTask.InvokeRequired = True Then Dim mi As New MethodInvoker(AddressOf Test) lblTask.Invoke(mi)

[code]....

View 7 Replies

VS 2008 CancelAsync Not Stopping Backgroundworker

Nov 18, 2009

Ive read through tons of forums, but my Backgroundworker1.CancelAsync still isn't working.I have Form1 that shows Form3(see code).when btn_submit is clicked on Form3 it runs the backgroundworker, copies a file from one place to another, and shows the progress in the progressbar.Form3 contains: lbl_message, btn_submit, btn_cancel, ProgressBar1, BackgroundWorker1 (with Workersupportcancelation = true.)When i click on the btn_cancel the copy continues, so i assume the backgroundworker has not stopped.[code]

View 2 Replies

VS 2008 GUI Freezes Up While The Backgroundworker Runs?

Nov 6, 2010

Of course, it's nice enough to unfreeze itself when the task is completed. I have must at looked at this code for 2 hours, and still can't find the bug.

Imports System.Threading
Public Class Form1
Dim PathAmount As Integer = 0

[code]......

View 2 Replies

VS 2008 ProgressBar Integration To BackGroundworker

Feb 22, 2011

I am trying to use the background worker to keep my application responsive during the calculations it does. All I need is one to calculate and the other to count time which I use a timer for. But when I try to use a progress bar as well as I want to see the progress it gives me an InvalidOperationException: Cross-thread operation not valid: Control 'ProgressBar1' accessed from a thread other than the thread it was created on. I need this to work, how could I use a component from outside the background worker? This is the background worker bit:

[Code]....

View 2 Replies

VS 2008 Running A New Form As A Backgroundworker?

Aug 6, 2009

I have created a application that creates a windows schedule task that connects to a FTP server and uploads/synchronize selected files and folders from your computer. After the user has selected all needed information and click continue, a form with a progressbar (Marquee) should appear. The application will then perform different tasks needed for the schedule to be completed. When all needed tasks are finished i want the progressForm to close and the main form will show you a summary of the newly created task.

I run the tasks in the main thread and assign a backgroundworker for the porgressFrom. i have have also tried to run the taks in a backgroundworker.

Button Continue Click Event.
Private Sub btn_Continue_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Continue.Click
Try

[Code]....

View 1 Replies

VS 2008 - BackgroundWorker Call Additional Subs?

Jul 7, 2009

Can a BackgroundWorker call additional subs? In my program I am connectiong to an OPC Server. I am doing some AsynReads, which in themselves don't take anytime. But Once I get the AsyncReadComplete returned, I want to do the AsyncRead right away. Basically I need to Loop them. The problem now is that while it is doing this, Everything is unresponsive, because it is just going through the loop. So to perhaps rephrase the question, If the BackgroundWorker initiates a process (in this case AsyncRed) would the returned AsyncReadComplete be apart of the BackgroundWorker or seperate Thread?

View 7 Replies

VS 2008 Add Information To A ListView From A BackgroundWorker Thread?

Nov 30, 2009

I'm trying to add information to a ListView from a BackgroundWorker thread. I thought I could do this in this manner:

vb.net
Private Delegate Sub _ListView(ByVal lvi As ListViewItem)
Public Sub test(ByVal lvi As ListViewItem)

[Code].....

When I attempt to run the "test" sub the BackgroundWorker, I get an error:

Argument not specified for parameter 'lvi' of 'Public Syb test(lvi as System.Windows.Forms.ListViewItem)'.

Is there something I need to specify when declaring the sub, or in the sub itself?

View 8 Replies

VS 2008 BackgroundWorker Error With Combobox.set_AutoCompleteMode

Jul 20, 2010

I am using a background worker's work method to create a new form and show it.

But it throws this error

System.Threading.ThreadStateException was unhandled by user code
Message="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]....

View 2 Replies

VS 2008 Backgroundworker Wont Execute Function?

Mar 5, 2010

So, my code for testing is quite simple...

Public Class sandbox
Dim hits As Integer = 0
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
BackgroundWorker1.RunWorkerAsync()
End Sub

[Code]...

from the button1 click..if i run the: test...it works fine.but if i call it from a backgroundworker..it doesnt do anything.I'm going to assume this is a limitation of the backgroundworker...is there a workaround?

View 5 Replies

VS 2008 Updating A ListView From A BackGroundWorker Thread?

Sep 20, 2009

I'm using the following to check the state of checkboxes and then activate some public subs based on the checked state of the checkboxes:

vb.net
Public Sub TestSub() If Me.CheckBox1.InvokeRequired Then Me. CheckBox1.Invoke(New MethodInvoker(AddressOf TestSub)) Else Begin() End If End Sub

Within the Begin sub, I have code that performs specific actions and then updates a ListView with that information.As far as I can tell, the actions are being performed, but the ListView isn't being updated with the info.I'm calling the Test sub from a seperate form, within the BackGroundWorker's DoWork event.Would I have to check the InvokeRequired property of the ListView as well?I'm looking more into the documentation of the BackGroundWorker.

View 8 Replies

VS 2008 Using BackgroundWorker.ReportProgress To Report To Different Forms?

Aug 4, 2009

I have a Worker.cs in a ZScreenLib DLL that does the following: 1. takes ZScreenGUI.cs (a Windows Form) as an argument 2. creates a Background Worker object and does everything 3. reports progress to the ZScreenGUI form via BackgroundWorker.ReportProgressThe user can create as many instances as possible of Worker.cs class and do the background worker tasks Now I need to create another Windows form called ZScreenCLI.cs and wish to make use of this Worker.cs class because ZScreenCLI and ZScreenGUI are pretty much the same but ZScreenCLI has much less features compared to ZScreenGUI. My question is, how do you manage to report progress to ZScreenCLI? The ReportProgress methods are tied with the controls in ZScreenGUI form. Obviously there is a problem with the concept I am using

View 4 Replies

VS 2008 WebBrowser1.Document.GetElementsByTagName In BackgroundWorker?

Nov 15, 2011

I'm having problems executing this command as a BackgroundWorker. I wrote a license verification program that executes upon loading so I wanted do that in the background so that the program opens up right away and not wait for it to complete execution. The license verification codes work when it directly loads but when I put it in a BackgroundWorker it stalls at this command. WebBrowser1.Document.GetElementsByTagName("input") doesn't seem to execute in BackgroundWorker. I put a test msgbox before and after this command it and the after msgbox doesn't execute.Dim ElementCollection1 As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("input")

View 3 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved