473,749 Members | 2,350 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

VB 2005 Splash Screen Opacity Problems

1 New Member
I have migrated a vb.net program to vb 2005. I am going nuts trying to fix this.

There is a splash screen that fades in and then in the background some sub procedures are taking place.

Here is the original code; This code gives me cross threading errors dealing with the opacity.

Expand|Select|Wrap|Line Numbers
  1. Private myDebuglog As DebugLog = ApplicationDebugLog
  2.     Private FormAlpha As Double = 0
  3.     Private WithEvents AlphaTimer As New System.Timers.Timer
  4.     Private WindowsSecurityPrincipal As System.Security.Principal.WindowsPrincipal = New System.Security.Principal.WindowsPrincipal(System.Security.Principal.WindowsIdentity.GetCurrent())
  5.     Private ntUserName As String
  6.     Private strt As System.Threading.Thread
  7.  
  8.  
  9.     Private Sub frmSplash_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
  10.         ' Fill in the user box
  11.         ntUserName = WindowsSecurityPrincipal.Identity.Name.ToString
  12.         ntUserName = ntUserName.Replace("ILIOSPARTNERS\", "")
  13.         Me.txtLogin.Text = ntUserName
  14.         FormAlpha = 0.0
  15.         Me.Opacity = FormAlpha
  16.         AlphaTimer.Enabled = False
  17.         AlphaTimer.Interval = 10
  18.  
  19.         AlphaTimer.Enabled = True
  20.         'strt = New System.Threading.Thread(AddressOf AlphaTimer_Tick(AlphaTimer,)
  21.     End Sub
  22.  
  23.  
  24.  
  25.     Public Sub AlphaTimer_Tick(ByVal sender As Object, ByVal e As System.Timers.ElapsedEventArgs) Handles AlphaTimer.Elapsed
  26.  
  27.         If FormAlpha >= 1 Then
  28.             AlphaTimer.Enabled = False
  29.             Me.Opacity = 1.0
  30.         Else
  31.             Me.Opacity = FormAlpha
  32.             FormAlpha += 0.05
  33.             Me.Refresh()
  34.         End If
  35.     End Sub
  36.  
  37.     Public Sub UpdateStatus(ByVal status As String)
  38.         lblLoadingStatus.Text = status
  39.         Me.Refresh()
  40.     End Sub
  41.  
  42.  
  43.     Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
  44.         Me.Dispose()
  45.         Application.Exit()
  46.     End Sub
---------------------------------------------------------------------------------------------------------------
So I modified the code to like this thinking this would solve the problem but now I get disposed errors.

here is the revised code;

Expand|Select|Wrap|Line Numbers
  1. Private myDebuglog As DebugLog = ApplicationDebugLog
  2.     Private FormAlpha As Double = 0
  3.     Private WithEvents AlphaTimer As New System.Timers.Timer
  4.     Private WindowsSecurityPrincipal As System.Security.Principal.WindowsPrincipal = New System.Security.Principal.WindowsPrincipal(System.Security.Principal.WindowsIdentity.GetCurrent())
  5.     Private ntUserName As String
  6.     Private strt As System.Threading.Thread
  7.  
  8. Private Sub frmSplash_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
  9.         strt = New System.Threading.Thread(AddressOf updateValues)
  10.         strt.Start()
  11.         ' Fill in the user box
  12.         ntUserName = WindowsSecurityPrincipal.Identity.Name.ToString
  13.         ntUserName = ntUserName.Replace("ILIOSPARTNERS\", "")
  14.         Me.txtLogin.Text = ntUserName
  15.         FormAlpha = 0.0
  16.         Me.Opacity = FormAlpha
  17.         AlphaTimer.Enabled = False
  18.         AlphaTimer.Interval = 10
  19.  
  20.         AlphaTimer.Enabled = True
  21.         'strt = New System.Threading.Thread(AddressOf AlphaTimer_Tick(AlphaTimer,)
  22.     End Sub
  23.  
  24.  
  25.  
  26.     Public Sub AlphaTimer_Tick(ByVal sender As Object, ByVal e As System.Timers.ElapsedEventArgs) Handles AlphaTimer.Elapsed
  27.         updateValues()
  28.  
  29.     End Sub
  30.  
  31.     Public Sub updateValues()
  32.         If FormAlpha >= 1 Then
  33.             AlphaTimer.Enabled = False
  34.             changeOpacity()
  35.             'Me.Opacity = 1.0
  36.         Else
  37.             changeOpacity()
  38.             'Me.Opacity = FormAlpha
  39.             FormAlpha += 0.05
  40.             Me.Refresh()
  41.         End If
  42.     End Sub
  43.  
  44.     Public Sub UpdateStatus(ByVal status As String)
  45.         lblLoadingStatus.Text = status
  46.         Me.Refresh()
  47.     End Sub
  48.  
  49.  
  50.     Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
  51.         Me.Dispose()
  52.         Application.Exit()
  53.     End Sub
  54.  
  55.     Public Sub changeOpacity()
  56.         If Me.InvokeRequired Then
  57.             Me.Invoke(New MethodInvoker(AddressOf ChangeOpacity))
  58.         Else
  59.             Me.opacity = FormAlpha
  60.         End If
  61.     End Sub
Mar 1 '07 #1
1 1445
kenobewan
4,871 Recognized Expert Specialist
Please state the error in full and whether it gives you a line number. Also more info about the platform you are working in might help, OS, .net version etc. Thanks.
Mar 2 '07 #2

Sign in to post your reply or Sign up for a free account.

Similar topics

1
3601
by: BillZondlo | last post by:
Can someone look at this and tell me why, when I call this from my main app, it displays fine (fades form in and out) but then before my main app displays, I see other dialog boxes flash monentarily on the screen and this delays the main app display? Here is the fade which I compile to a dll and call from my main app: using System; using System.Threading; using System.Timers;
6
388
by: xhenxhe | last post by:
Anyone know of any how-to's on creating splash screens? -- Dustin -- http://www.LDSPDA.com http://www.Shiblon.com
6
2051
by: freddy | last post by:
I want my app to load a splash screen first than the app. I want this very simple please ( new to vb.net)
0
1210
by: Steve | last post by:
Hi All I have an odd thing happening with my splash screen form The splash screen is set in Project properties and in the 'new' event of the splash form I run some code (before the initialisation) to launch a form asking the user to select which SQL Server 2005 databases to connect to. All worked well I recently added a timer control to check for application inactivity and to
0
8996
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
9566
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
9333
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
9254
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
8256
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
6078
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
4608
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
4879
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
2
2791
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

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.