473,770 Members | 1,901 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

sluggish splash screen

I implemented the simplest of splash screens ( static and on its own thread ). But it seem that when first called maybe 8 seconds elapsed before it showed up, the main form follows several seconds later.

Naturally recalling the application, the response is adequate

I have 10 classes in my project. Some small, none really huge. And another form

public class frmQCLoader : System.Windows. Forms.For
{
private System.Windows. Forms.DataGrid QCDG
private System.Windows. Forms.Button btnLoad
private System.Windows. Forms.Button btnInstall
... 2 of my classe
more native control

public frmQCLoader(

// Required for Windows Form Designer suppor
frmStatic.ShowS taticForm(); // SO ITS FIRST in the STAC

Is is likely the considerable delay is called by instantiating my classes for referencing throughout the for
and if so, is there a way to around this ? Thank

Nov 15 '05 #1
3 2259
Hi Andrew,

If you look in the archives you will see some simples ways of doing a splash
screen, below you will find the code I'm using and it works fine.
You can say that the trick is show the form in the Main() method. this
assure that the splash is shown as early as possible

Hope this help,

--
Ignacio Machin,
ignacio.machin AT dot.state.fl.us
Florida Department Of Transportation
//************* The main form START CODE *************////////

public Form1()
{
InitializeCompo nent();
//This is the reason of the splash screen, to load data in the back :)
DataProvider.Lo adData();
splashform.Clos eIt();
}
[STAThread]
static void Main()
{
splashform = new splash();
Application.Run (new Form1());
}
//************* The main form END CODE *************////////

Below is the code for the splash window, only the code important to it is
shown, the rest is the regular code found in a windows form

//************* The splash form START CODE *************////////
DateTime time;
public splash()
{
//
// Required for Windows Form Designer support
//
InitializeCompo nent();

// Show the splash screen
Show();
//To know how many time it has been displayed
time = DateTime.Now;

Application.DoE vents();
}

public void CloseIt()
{
TimeSpan T = DateTime.Now - time;
// if the method was closed before a specific amount of time, wait for the
different and later close the form.
if (T.Milliseconds <3000)
System.Threadin g.Thread.Sleep( 3000-T.Milliseconds) ;
this.Close();
}
//************* The splash form END CODE *************////////

"andrewcw" <an******@acw.c om> wrote in message
news:80******** *************** ***********@mic rosoft.com...
I implemented the simplest of splash screens ( static and on its own thread ). But it seem that when first called maybe 8 seconds elapsed before
it showed up, the main form follows several seconds later.
Naturally recalling the application, the response is adequate.

I have 10 classes in my project. Some small, none really huge. And another form.
public class frmQCLoader : System.Windows. Forms.Form
{
private System.Windows. Forms.DataGrid QCDG;
private System.Windows. Forms.Button btnLoad;
private System.Windows. Forms.Button btnInstall;
... 2 of my classes
more native controls

public frmQCLoader()
{
// Required for Windows Form Designer support frmStatic.ShowS taticForm(); // SO ITS FIRST in the STACK

Is is likely the considerable delay is called by instantiating my classes for referencing throughout the form and if so, is there a way to around this ? Thanks

Nov 15 '05 #2
The problem is more than likely due to the fact that your app is loading and
initializing multiple modules. All that adds up to a slow splash screen.

Have you looked into delayed/demand loading of your modules? (i.e. loading the
module when first accessed). Look in MSDN documentation for details on how to
do this.

If that doesn't work, you may have to simply create a stub app that simply
displays your splash screen and then executes your actual app? I've done this
in previous projects -- a little cumbersome, but it provides *instantaneous*
response to the user.

andrewcw wrote:

moving the call for splash screen to main does seem to help a little bit - I went from about 12 seconds for splash screen to display to 9 seconds with a 1 GHZ 256 MB RAM PC.


--
Bret Pehrson
mailto:br**@inf owest.com
NOSPAM - Include this key in all e-mail correspondence <<38952rglkwdsl >>
Nov 15 '05 #3

Hi Andrew,

Does the community's reply make sense to you?

If you still have anything unclear, please feel free to post, I will help
you.

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

Nov 15 '05 #4

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

Similar topics

2
6922
by: Bill | last post by:
Problem 1) Any ideas on how I would get a splash screen to appear for a certain amount of time when I open a database - it's to display a text based disclaimer message. I know about message boxes in VB but I don't my users having to click on an OK buttone each time this appears. Problem 2)
14
6697
by: SStory | last post by:
I am trying to make a splash screen for my vb.net app. It is an mdi app. including the splash code produces wierd results. not inluding makes things fine. Also have tried loading the splash form from: * load event of main mdi parent
2
2109
by: Joe Cool | last post by:
Using VB in VS2005. 2005 has a new way to implment a spash screen that alleviates the need for hardly any code. But I have found that when a GUI that has a splash screen is run as a scheduled task, the splash screen (and no other screen) is displayed for the entire run of the application. How can I disable the spalsh screen just for when an app is run as a scheduled task?
1
2255
by: Ken Allen | last post by:
I am developing a small utility program that must perform a considerable amount of 'background' or 'research' work before it can display any user interface. In general it can take 3-15 seconds to perform all of the work requured before we display any user interface. So we have determined that the utility should have a splash screen to assure the user that the program is executing and will provide results shortly. I should also note that...
5
6412
by: steve | last post by:
Hi All I have a form set as the splash screen in VB.net 2005 application properties How can I tell when it has or is closing, as I want to then run some licence checking code without the splash screen interfering with msgboxes which may need to be displayed if the licence is invalid or missing I have tried in the splash form's formclosing event but it does not fire
2
4219
by: will_456 | last post by:
In vb2005 Express: In My Project Application Splash Screen I have selected my splash screen form. The form opens on project startup but closes immediately before anyone would have time to read it. I presume it only stays visible while the main form initialises. This is not long enough but I can't see how to slow it down. Should I set the splash screen using the Application settings or go back to
10
22378
by: =?Utf-8?B?UmljaGFyZCBCeXNvdXRo?= | last post by:
Hi In my app I have a SplashScreen, a login form and a main form. On launching the app, I'd like to show the SplashScreen while reading config files and attempting a database connection. I show progress of these tasks on a label on the SplashScreen form. Once this is completed ok, the splash screen should close and the login form should be displayed. A successful login closes that form and shows the main form.
4
5222
by: Gaz | last post by:
I am having a bit of a problem getting my application to work properly. RIght here is my problem... WHen my C# windows app loads up the start form, i create a new thread and show the splash on the new thread and put the main thread to sleep until the splash screen has done the business, then i kill the new thread and start another to show the login and again put the main one to sleep. Problem i have is that my splash screen will show...
2
16016
by: Newbie | last post by:
Hi, In the application properties of my vb.net 2008 project I have set one of my forms to be the splash screen. How do I increase the time the splash screen is displayed for. It vanishs to quick,and I would like it to display for 4 seconds Thanks
0
9618
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9454
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10259
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
10038
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 Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9906
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
8933
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, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
6710
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 then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5354
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 last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5482
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?

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.