What the...?

Something bad happened

We're not sure what, but we have a few guesses.

Problem: Object reference not set to an instance of an object.
Ticket: 7864830
Server: Web03
An Office 2003-like popup notifier - CodeProject Click here to Skip to main content
11,715,022 members (72,519 online)
Click here to Skip to main content

An Office 2003-like popup notifier

, 23 Mar 2006 CPOL 213.2K 5.5K 179
Rate this:
Please Sign up or sign in to vote.
A nice little control to help the user notice you're trying to tell him something...


This is a simple project, a control that mimics the Microsoft® Outlook® 2003 mail alert.


This control has several features. Among them, you'll find:

Progressive appearance - transparency

MSN Messenger like pop-ups (any size, color, etc.)

Another sample

This control is 100% drawn in the code, there is absolutely no other dependencies than System.Drawing and System.Windows.Forms.

You can include a ContextMenuStrip when clicking on the "down arrow" button.

Using the code

The controls is made of two basic classes:

  • A form (the part that will actually show up).
  • A class that contains all the properties that will be includable on forms.

The class contains two timers, one used for the appearing/disappearing animation, the other (configurable) is used to define how much time the popup is shown before it disappears.

This is how the form is actually shown:

fPopup.Size = Size
fPopup.Opacity = 0
fPopup.Location = _
  New Point(Screen.PrimaryScreen.WorkingArea.Right_
   - fPopup.Size.Width - 1, _

The form is does the drawing in the Paint event.

I'm using these functions to obtain a color that is similar but lighter/darker. There might exist another method.

Private Function GetDarkerColor(ByVal Color As Color) As Color
    Dim clNew As Color
    clNew = Drawing.Color.FromArgb(255, DedValueMin0(CInt(Color.R), _
            Parent.GradientPower), DedValueMin0(CInt(Color.G), _
            Parent.GradientPower), DedValueMin0(CInt(Color.B), _
    Return clNew
End Function

And to avoid flickering...

Me.SetStyle(ControlStyles.OptimizedDoubleBuffer, True)
Me.SetStyle(ControlStyles.ResizeRedraw, True)
Me.SetStyle(ControlStyles.AllPaintingInWmPaint, True)

Points of Interest

None really, it's nice, it's fun, it's colorful... that's it Smile | :)


  • March 2006 - V 1.0.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Nicolas Wälti
Software Developer (Senior)
Switzerland Switzerland
No Biography provided

You may also be interested in...

Comments and Discussions

GeneralMultiple Highlight Lines Pin
b00tleg22-Mar-07 9:38
memberb00tleg22-Mar-07 9:38 
AnswerRe: Multiple Highlight Lines Pin
Nick Waelti22-Mar-07 22:34
memberNick Waelti22-Mar-07 22:34 
GeneralRe: Multiple Highlight Lines Pin
b00tleg23-Mar-07 7:04
memberb00tleg23-Mar-07 7:04 
GeneralRe: Multiple Highlight Lines Pin
Honey Arora23-May-07 19:29
memberHoney Arora23-May-07 19:29 
GeneralC# version Pin
Ambili_T21-Mar-07 22:23
memberAmbili_T21-Mar-07 22:23 
AnswerRe: C# version Pin
LittleWhiteDog22-Mar-07 21:33
memberLittleWhiteDog22-Mar-07 21:33 
QuestionHowto move the popup with the grip? Pin
LittleWhiteDog14-Mar-07 5:32
memberLittleWhiteDog14-Mar-07 5:32 
AnswerRe: Howto move the popup with the grip? Pin
Nick Waelti15-Mar-07 2:42
memberNick Waelti15-Mar-07 2:42 
QuestionRe: Howto move the popup with the grip? [modified] Pin
LittleWhiteDog21-Mar-07 5:20
memberLittleWhiteDog21-Mar-07 5:20 
QuestionExtract the image Pin
LittleWhiteDog13-Mar-07 22:54
memberLittleWhiteDog13-Mar-07 22:54 
AnswerRe: Extract the image Pin
Nick Waelti15-Mar-07 2:41
memberNick Waelti15-Mar-07 2:41 
NewsRe: Extract the image [modified] Pin
LittleWhiteDog15-Mar-07 23:22
memberLittleWhiteDog15-Mar-07 23:22 
Questionediting the dll file?!? Pin
thebirdman19849-Mar-07 1:45
memberthebirdman19849-Mar-07 1:45 
AnswerRe: editing the dll file?!? Pin
thebirdman19849-Mar-07 3:35
memberthebirdman19849-Mar-07 3:35 
AnswerRe: editing the dll file?!? Pin
Nick Waelti15-Mar-07 2:39
memberNick Waelti15-Mar-07 2:39 
GeneralThe popup only fires in form load. Pin
astanton197821-Feb-07 2:06
memberastanton197821-Feb-07 2:06 
GeneralRe: The popup only fires in form load. Pin
astanton197821-Feb-07 4:05
memberastanton197821-Feb-07 4:05 
GeneralPort code to VS .NET Pin
utstudent26-Jan-07 16:37
memberutstudent26-Jan-07 16:37 
GeneralRe: Port code to VS .NET Pin
waltersenekal19-Feb-07 3:51
memberwaltersenekal19-Feb-07 3:51 
GeneralRe: Port code to VS .NET Pin
utstudent19-Feb-07 14:44
memberutstudent19-Feb-07 14:44 
QuestionYes No Replies Pin
davidswift12-Jan-07 4:28
memberdavidswift12-Jan-07 4:28 
AnswerRe: Yes No Replies Pin
Nick Wälti15-Jan-07 19:57
memberNick Wälti15-Jan-07 19:57 
QuestionUse in Threads Pin
K32127-Nov-06 11:57
memberK32127-Nov-06 11:57 
GeneralAvoid losing focus when popup appears Pin
calis online15-Oct-06 23:12
membercalis online15-Oct-06 23:12 
QuestionRe: Avoid losing focus when popup appears Pin
calis online30-Oct-06 20:05
membercalis online30-Oct-06 20:05 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.150901.1 | Last Updated 23 Mar 2006
Article Copyright 2006 by Nicolas Wälti
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid