Other Software > Developer's Corner
Keeping the UI Responsive - What Would You Do?
Renegade:
yeah yeah yeah... I know... Keep the UI responsive...
However, I'm looking for advice on WHAT YOU WOULD DO.
I have a few places where some user initiated network activity cause delays.
Those delays are actually very short with only a few hundred bytes being transferred. 2 Kb tops.
However, as we all know, network latency and speeds can be murder.
I'm finding that on my uber-slow, kill me now, assie Internet connection that I can't even display a Windows form in time before some operations are complete. That slows things down because I'm chewing up resources to display a form that may or may not be needed, but I cannot predict if it will be needed or not... Catch-22...
(The form is to alert users that they may need to wait a few seconds.)
So... Create an in-form panel and do it that way? It's possible of course. I just kind of don't like that...
Anyways, does anyone have any preferred ways?
skwire:
I like to use the status bar area for this sort of thing with either a progress bar or looped bit of animated text:
Example #1:
--- ---Downloading data.
Downloading data..
Downloading data...
Example #2:
--- ---Downloading data |
Downloading data /
Downloading data -
Downloading data \
Renegade:
It's indeterminate, so I don't like loops for things like that.
It it were a knowable time, then that would be another matter.
skwire:
Yes, I understand it's indeterminate. That's why I use one of the two examples I listed above. Neither one is a finite type of notification. All it serves to do is give the user some notice that the application is "doing something" even if that something is waiting on data.
Renegade:
That's WHAT to display, but I'm looking for HOW to display.
I could use delegates and do it that way, or spin off the processing in a thread, but those are the kinds of things that I'm looking for.
What would be the easiest, best way to keep a responsive UI and keep control with the user, while maintaining a UI that updates in time. (See above for that last problem.)
Navigation
[0] Message Index
[#] Next page
Go to full version