Load a second form as a splash screen

This forum can be browsed by the general public. Posting is limited to current SAPIEN license holders with active maintenance and does not offer a response time guarantee.
Forum rules
DO NOT POST LICENSE NUMBERS, ACTIVATION KEYS OR ANY OTHER LICENSING INFORMATION IN THIS FORUM.
Only the original author and our tech personnel can reply to a topic that is created in this forum. If you find a topic that relates to an issue you are having, please create a new topic and reference the other in your post.

Any code longer than three lines should be added as code using the 'Select Code' dropdown menu or attached as a file.
This topic is 10 years and 11 months old and has exceeded the time allowed for comments. Please begin a new topic or use the search feature to find a similar but newer topic.
User avatar
clum09
Posts: 150
Last visit: Sun Jan 21, 2024 5:07 pm

Load a second form as a splash screen

Post by clum09 »

Hello,

I am wondering if there is a way to have two forms in Windows.Forms.Form object in one PowerShell script where a splash screen form loads before the main form so that I can produce a splash screen for the application before the main form application loads?

Something like having the main form load first and then the splash screen form loads and waits for 3 seconds and then the splash screen form closes, leaving the main form open.


Thanks.
User avatar
davidc
Posts: 5913
Last visit: Mon Jul 08, 2019 8:55 am
Been upvoted: 2 times

Re: Load a second form as a splash screen

Post by davidc »

Not automatically. You would have to create the splash screen and export the script. Then modify the $form1.ShowDialog() to $form1.Show() and add the ps1 script to your project.

As long as you don't return any variables you should be fine.

As for the timer, use the Timer control and in the tick event close the form. You might have to place the $form1 variable in the script scope in order for this to work.

Alternatively you can try running the unmodified exported script in a different runspace.

David
David
SAPIEN Technologies, Inc.
User avatar
clum09
Posts: 150
Last visit: Sun Jan 21, 2024 5:07 pm

Re: Load a second form as a splash screen

Post by clum09 »

Davidc,

Thank you for the response.

I created a splash form, exported it to a ps1 script. Then copied the form code to put in the main form, but I don't know where to a have a while loop for the main form to wait for the splash form to load for 3 seconds and then closes the splash form and make the main form active.

Do you have any suggestions?
User avatar
davidc
Posts: 5913
Last visit: Mon Jul 08, 2019 8:55 am
Been upvoted: 2 times

Re: Load a second form as a splash screen

Post by davidc »

Well if you only want to show the splash screen without really waiting for loading, then you can just do a normal Call-Form_pff in the Load event and use the timer (in the splash screen form) to close the splash screen.

For more info on the Timer control:

http://www.sapien.com/blog/2011/08/09/p ... r-control/


David
David
SAPIEN Technologies, Inc.
User avatar
clum09
Posts: 150
Last visit: Sun Jan 21, 2024 5:07 pm

Re: Load a second form as a splash screen

Post by clum09 »

David,

I made a splash form, exported it to a ps1 file, copied the code to place on top of the main form's code. I changed the $form1.ShowDialog() of the splash form to $form1.Show().

I called the splash form from the script block of the main form like:

$FormEvent_Load={
Call-Splash_pff | Out-Null
}

Both the main form and the splash form load, but I cannot make the timer for the splash form and close the splash form after 3 second.

Do you have any suggestion?

Thanks.
User avatar
davidc
Posts: 5913
Last visit: Mon Jul 08, 2019 8:55 am
Been upvoted: 2 times

Re: Load a second form as a splash screen

Post by davidc »

In your case you do not necessary have export the script and change it to Show. But if you do this, you need to make sure you set any control variable you have to access to the script scope:
PowerShell Code
Double-click the code block to select all.
$script:FormName = New-Object System.Windows.Forms.Form
Otherwise the variable will be null.

David
David
SAPIEN Technologies, Inc.
User avatar
clum09
Posts: 150
Last visit: Sun Jan 21, 2024 5:07 pm

Re: Load a second form as a splash screen

Post by clum09 »

David,

Below is the code I have so far.

This code works, but I don't know how to set the timer for the splash form to open for 3 seconds and then close the splash form. While the Splash form is open, I also want to disable the main form and the Exit button on the main form. After the splash form closed, I want to re-enable to the main form and the Exit button on the main form. Do you have any suggestion on how to accomplish these tasks?

#----------------------------------------------
#region Application Functions
#----------------------------------------------

function OnApplicationLoad {
#Note: This function is not called in Projects
#Note: This function runs before the form is created
#Note: To get the script directory in the Packager use: Split-Path $hostinvocation.MyCommand.path
#Note: To get the console output in the Packager (Windows Mode) use: $ConsoleOutput (Type: System.Collections.ArrayList)
#Important: Form controls cannot be accessed in this function
#TODO: Add snapins and custom code to validate the application load

return $true #return true for success or false for failure
}

function OnApplicationExit {
#Note: This function is not called in Projects
#Note: This function runs after the form is closed
#TODO: Add custom code to clean up and unload snapins when the application exits

$script:ExitCode = 0 #Set the exit code for the Packager
}

#endregion Application Functions


#----------------------------------------------
# Generated Splash Form Function
#----------------------------------------------
function Call-SplashForm_pff {

#----------------------------------------------
#region Import the Assemblies. I rem out this script
#block because it is loaded by the script block of
#the main form.
#----------------------------------------------
# [void][reflection.assembly]::Load("mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
# [void][reflection.assembly]::Load("System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
# [void][reflection.assembly]::Load("System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
# [void][reflection.assembly]::Load("System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
# [void][reflection.assembly]::Load("System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
# [void][reflection.assembly]::Load("System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
# [void][reflection.assembly]::Load("System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
# [void][reflection.assembly]::Load("System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
# [void][reflection.assembly]::Load("System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
#endregion Import Assemblies

#----------------------------------------------
#region Generated Form Objects
#----------------------------------------------
[System.Windows.Forms.Application]::EnableVisualStyles()
$formSplash = New-Object 'System.Windows.Forms.Form'
$timer1 = New-Object 'System.Windows.Forms.Timer'
$InitialFormWindowState = New-Object 'System.Windows.Forms.FormWindowState'
#endregion Generated Form Objects

#----------------------------------------------
# User Generated Script
#----------------------------------------------



$FormEvent_Load={
#TODO: Initialize Form Controls here


}

# --End User Generated Script--
#----------------------------------------------
#region Generated Events
#----------------------------------------------

$Form_StateCorrection_Load=
{
#Correct the initial state of the form to prevent the .Net maximized form issue
$formSplash.WindowState = $InitialFormWindowState
}

$Form_Cleanup_FormClosed=
{
#Remove all event handlers from the controls
try
{
$formSplash.remove_Load($FormEvent_Load)
$timer1.remove_Tick($FormEvent_Load)
$formSplash.remove_Load($Form_StateCorrection_Load)
$formSplash.remove_FormClosed($Form_Cleanup_FormClosed)
}
catch [Exception]
{ }
}
#endregion Generated Events

#----------------------------------------------
#region Generated Splash Form Code
#----------------------------------------------
#
# formSplash
#
#region Binary Data
$formSplash.BackgroundImage = [System.Convert]::FromBase64String('
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
AElFTkSuQmCC')
#endregion
$formSplash.BackgroundImageLayout = 'None'
$formSplash.ClientSize = '485, 294'
$formSplash.FormBorderStyle = 'None'
$formSplash.KeyPreview = $True
$formSplash.MaximizeBox = $False
$formSplash.MinimizeBox = $False
$formSplash.Name = "formSplash"
$formSplash.ShowIcon = $False
$formSplash.ShowInTaskbar = $False
$formSplash.StartPosition = 'CenterScreen'
$formSplash.Text = "Splash"
$formSplash.TopMost = $true
$formSplash.add_Load($FormEvent_Load)
#
# timer1
#
$timer1.Enabled = $True
$timer1.Interval = 3000000
$timer1.add_Tick($FormEvent_Load)
#endregion Generated Form Code

#----------------------------------------------

#Save the initial state of the form
$InitialFormWindowState = $formSplash.WindowState
#Init the OnLoad event to correct the initial state of the form
$formSplash.add_Load($Form_StateCorrection_Load)
#Clean up the control events
$formSplash.add_FormClosed($Form_Cleanup_FormClosed)
#Show the Form
return $formSplash.Show()

} #End Function

#Call OnApplicationLoad to initialize
if((OnApplicationLoad) -eq $true)
{
#Call the form
#Call-SplashForm_pff | Out-Null
#Perform cleanup
OnApplicationExit
}


#----------------------------------------------
# Generated Main Form Function
#----------------------------------------------
function Call-MainForm_pff {

#----------------------------------------------
#region Import the Assemblies
#----------------------------------------------
[void][reflection.assembly]::Load("mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
[void][reflection.assembly]::Load("System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
[void][reflection.assembly]::Load("System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
[void][reflection.assembly]::Load("System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
[void][reflection.assembly]::Load("System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
[void][reflection.assembly]::Load("System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
[void][reflection.assembly]::Load("System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
[void][reflection.assembly]::Load("System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
[void][reflection.assembly]::Load("System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
#endregion Import Assemblies

#----------------------------------------------
#region Generated Main Form Objects
#----------------------------------------------
[System.Windows.Forms.Application]::EnableVisualStyles()
$formMainForm = New-Object 'System.Windows.Forms.Form'
$textbox2 = New-Object 'System.Windows.Forms.TextBox'
$textbox1 = New-Object 'System.Windows.Forms.TextBox'
$labelLastName = New-Object 'System.Windows.Forms.Label'
$labelFirstName = New-Object 'System.Windows.Forms.Label'
$buttonExit = New-Object 'System.Windows.Forms.Button'
$timer1 = New-Object 'System.Windows.Forms.Timer'
$InitialFormWindowState = New-Object 'System.Windows.Forms.FormWindowState'
#endregion Generated Form Objects

#----------------------------------------------
# User Generated Mian Form Script
#----------------------------------------------

$FormEvent_Load={
#TODO: Initialize Form Controls here

Call-SplashForm_pff

}

$Exit={
#TODO: Place custom script here
$formMainForm.Close()
}

# --End User Generated Script--
#----------------------------------------------
#region Generated Events
#----------------------------------------------

$Form_StateCorrection_Load=
{
#Correct the initial state of the form to prevent the .Net maximized form issue
$formMainForm.WindowState = $InitialFormWindowState
}

$Form_Cleanup_FormClosed=
{
#Remove all event handlers from the controls
try
{
$formMainForm.remove_Load($FormEvent_Load)
$formMainForm.remove_Click($Exit)
$formMainForm.remove_Load($Form_StateCorrection_Load)
$formMainForm.remove_FormClosed($Form_Cleanup_FormClosed)
}
catch [Exception]
{ }
}
#endregion Generated Events

#----------------------------------------------
#region Generated Form Code
#----------------------------------------------
#
# formMainForm
#
$formMainForm.Controls.Add($textbox2)
$formMainForm.Controls.Add($textbox1)
$formMainForm.Controls.Add($labelLastName)
$formMainForm.Controls.Add($labelFirstName)
$formMainForm.Controls.Add($buttonExit)
$formMainForm.ClientSize = '627, 473'
$formMainForm.FormBorderStyle = 'FixedDialog'
$formMainForm.MaximizeBox = $False
$formMainForm.MinimizeBox = $False
$formMainForm.Name = "formMainForm"
$formMainForm.StartPosition = 'CenterScreen'
$formMainForm.Text = "Main Form"
$formMainForm.add_Load($FormEvent_Load)
$formMainForm.add_Click($Exit)
#
# textbox2
#
$textbox2.Location = '389, 70'
$textbox2.Name = "textbox2"
$textbox2.Size = '163, 20'
$textbox2.TabIndex = 1
#
# textbox1
#
$textbox1.Location = '89, 70'
$textbox1.Name = "textbox1"
$textbox1.Size = '131, 20'
$textbox1.TabIndex = 0
#
# labelLastName
#
$labelLastName.Location = '389, 49'
$labelLastName.Name = "labelLastName"
$labelLastName.Size = '62, 18'
$labelLastName.TabIndex = 2
$labelLastName.Text = "Last Name"
#
# labelFirstName
#
$labelFirstName.Location = '89, 51'
$labelFirstName.Name = "labelFirstName"
$labelFirstName.Size = '73, 16'
$labelFirstName.TabIndex = 1
$labelFirstName.Text = "First Name"
#
# buttonExit
#
$buttonExit.Anchor = 'Bottom, Right'
$buttonExit.DialogResult = 'OK'
$buttonExit.Location = '275, 425'
$buttonExit.Name = "buttonExit"
$buttonExit.Size = '75, 23'
$buttonExit.TabIndex = 3
$buttonExit.Text = "Exit"
$buttonExit.UseVisualStyleBackColor = $True
#
# timer1
#
#endregion Generated Form Code

#----------------------------------------------

#Save the initial state of the form
$InitialFormWindowState = $formMainForm.WindowState
#Init the OnLoad event to correct the initial state of the form
$formMainForm.add_Load($Form_StateCorrection_Load)
#Clean up the control events
$formMainForm.add_FormClosed($Form_Cleanup_FormClosed)
#Show the Form
return $formMainForm.ShowDialog()

} #End Function

#Call OnApplicationLoad to initialize
if((OnApplicationLoad) -eq $true)
{
#Call the form
Call-MainForm_pff | Out-Null
#Perform cleanup
OnApplicationExit
}


Thanks.
User avatar
davidc
Posts: 5913
Last visit: Mon Jul 08, 2019 8:55 am
Been upvoted: 2 times

Re: Load a second form as a splash screen

Post by davidc »

If you want the Mainform not to be interactive then call the Splash screen with ShowDialog(). This will freeze the parent form until the splash screen closes.

David
David
SAPIEN Technologies, Inc.
User avatar
clum09
Posts: 150
Last visit: Sun Jan 21, 2024 5:07 pm

Re: Load a second form as a splash screen

Post by clum09 »

David,

The problem I have right now is: how can I set a timer to wait for 3 seconds and then close the splash form.

Thanks.
User avatar
davidc
Posts: 5913
Last visit: Mon Jul 08, 2019 8:55 am
Been upvoted: 2 times

Re: Load a second form as a splash screen

Post by davidc »

Place a timer in the splash screen form and close the form on the tick event. Please refer to the Timer spotlight article for more details on how to use the timer control.

David
David
SAPIEN Technologies, Inc.
This topic is 10 years and 11 months old and has exceeded the time allowed for comments. Please begin a new topic or use the search feature to find a similar but newer topic.