{"id":824,"date":"2013-04-06T14:19:33","date_gmt":"2013-04-06T03:19:33","guid":{"rendered":"http:\/\/www.rjmprogramming.com.au\/wordpress\/?p=824"},"modified":"2013-04-06T14:19:33","modified_gmt":"2013-04-06T03:19:33","slug":"another-desktop-job-and-its-gui-event-analysis","status":"publish","type":"post","link":"https:\/\/www.rjmprogramming.com.au\/ITblog\/another-desktop-job-and-its-gui-event-analysis\/","title":{"rendered":"Another Desktop Job and its GUI Event Analysis"},"content":{"rendered":"<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/VB.NET\/GUI\/\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"A Job\" src=\"http:\/\/www.rjmprogramming.com.au\/VB.NET\/GUI\/gui_design.jpg\" title=\"Another Desktop Job and its GUI Event Analysis\"  style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Another Desktop Job and its GUI Event Analysis<\/p><\/div>\n<p>When there is a big job to do I really really like Event Driven programming.   All around programming work are events, whether that be for web work or desktop work.   It has probably increased over time, because of the increased interactivity of the way work is done with computers and how it has to interface with people using it.<\/p>\n<p>What interests me the most are:<\/p>\n<ul>\n<li>the design of the relationship between data (ie. database needs) and software (ie. programs) and linkages (ie. networking) and environment (ie. platform) and people involved (ie. implementation) &#8230; usually the Stakeholders and Development Group and its Software Lead<\/li>\n<li>software product analysis (ie. software platforms, database platforms) &#8230; usually the Software Lead and\/or Analyst\/Programmer<\/li>\n<li>data design (ie. database structure) &#8230; usually the Software Lead and\/or Analyst\/Programmer<\/li>\n<li>the design of the GUI (graphical user interface) as far as components of the interface is concerned &#8230; usually the Software Lead and\/or Analyst\/Programmer<\/li>\n<li>what events are needed to make these components above useful &#8230; usually the Analyst\/Programmer<\/li>\n<li>redesigning as technical problems make different solutions a better fit &#8230; usually the Analyst\/Programmer and often the Software Lead<\/li>\n<\/ul>\n<p>The example here is Colour Matching Paint Colours.   Pretty clearly the database design is crucial.   The interface of the user to this data is also critical, and so a GUI design will be part of the process.<\/p>\n<p>How do you approach this?<\/p>\n<p>Well, nobody can really lay down the law here, because there will be requirements and opinions from many sources, but supposing you can arrive at a GUI component list from these discussions, then, how do you proceed forward?<\/p>\n<p>Sometimes it is easy to forget the events, but the events equate to processes, and, it seems to me, this is what is interesting, and can be a good approach to take.   If you are working in an OOP environment it would be useful to have objects in mind as you evaluate a proposed process (or event).<\/p>\n<p>Below is an analysis of the events used for the GUI of the Colour Matching desktop program (Visual Studio 2010 VB.Net interfacing to MS-SQL and\/or Advantage) of this presentation.   Think it makes for interesting reading (zzzzzzzzzzz) &#8230; there&#8217;s always one, isn&#8217;t there?!<\/p>\n<p><!--html><body--><\/p>\n<table border=\"1\" style=\"border-left: 2px solid blue; background-color: lightblue;\">\n<tbody>\n<th>Event Usage Analysis for Colour Matching Program<\/th>\n<tr>\n<td>Activated<br \/>\n<select title='Activated Event (1)'><option value=''>Activated Event (1) &#8230;<\/option><option value=Activated>Private Sub Form1_Activated(sender As System.Object, e As System.EventArgs) Handles MyBase.Activated<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>BackColorChanged<br \/>\n<select title='BackColorChanged Event (5)'><option value=''>BackColorChanged Event (5) &#8230;<\/option><option value=BackColorChanged>Private Sub ColourName_BackColorChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourName.BackColorChanged<\/option><option value=BackColorChanged>Private Sub ColourPalette_BackColorChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette.BackColorChanged<\/option><option value=BackColorChanged>Private Sub ColourPaltext1_BackColorChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext1.BackColorChanged<\/option><option value=BackColorChanged>Private Sub ColourPaltext3_BackColorChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext3.BackColorChanged<\/option><option value=BackColorChanged>Private Sub ColourPaltext_BackColorChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext.BackColorChanged<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>CheckedChanged<br \/>\n<select title='CheckedChanged Event (2)'><option value=''>CheckedChanged Event (2) &#8230;<\/option><option value=CheckedChanged>Private Sub Clear_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Clear.CheckedChanged<\/option><option value=CheckedChanged>Private Sub MeasuredAlready_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MeasuredAlready.CheckedChanged<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>Click<br \/>\n<select title='Click Event (62)'><option value=''>Click Event (62) &#8230;<\/option><option value=Click>Private Sub AboutUsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AboutUsToolStripMenuItem.Click, AboutUsToolStripMenuItem1.Click<\/option><option value=Click>Private Sub AllToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AllToolStripMenuItem.Click<\/option><option value=Click>Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<\/option><option value=Click>Private Sub Closest1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest1.Click<\/option><option value=Click>Private Sub Closest2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest2.Click<\/option><option value=Click>Private Sub Closest3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest3.Click<\/option><option value=Click>Private Sub Closest4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest4.Click<\/option><option value=Click>Private Sub Closest5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest5.Click<\/option><option value=Click>Private Sub Closest_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest.DoubleClick<\/option><option value=Click>Private Sub Clotext1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Clotext1.Click<\/option><option value=Click>Private Sub Clotext2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Clotext2.Click<\/option><option value=Click>Private Sub Clotext3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Clotext3.Click<\/option><option value=Click>Private Sub Clotext4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Clotext4.Click<\/option><option value=Click>Private Sub Clotext5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Clotext5.Click<\/option><option value=Click>Private Sub ColourName_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourName.DoubleClick<\/option><option value=Click>Private Sub ColourPalette1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette1.Click<\/option><option value=Click>Private Sub ColourPalette2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette2.Click<\/option><option value=Click>Private Sub ColourPalette3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette3.Click<\/option><option value=Click>Private Sub ColourPalette4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette4.Click<\/option><option value=Click>Private Sub ColourPalette5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette5.Click<\/option><option value=Click>Private Sub ColourPalette_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette.Click<\/option><option value=Click>Private Sub ColourPaltext1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext1.Click<\/option><option value=Click>Private Sub ColourPaltext2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext2.Click<\/option><option value=Click>Private Sub ColourPaltext3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext3.Click<\/option><option value=Click>Private Sub ColourPaltext4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext4.Click<\/option><option value=Click>Private Sub ColourPaltext5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext5.Click<\/option><option value=Click>Private Sub ColourPaltext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext.Click<\/option><option value=Click>Private Sub ComparisonsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComparisonsToolStripMenuItem.Click<\/option><option value=Click>Private Sub EmailToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EmailToolStripMenuItem.Click, EmailToolStripMenuItem1.Click<\/option><option value=Click>Private Sub Email_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Email.Click<\/option><option value=Click>Private Sub Form1_MouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseClick<\/option><option value=Click>Private Sub Label13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label13.Click<\/option><option value=Click>Private Sub Location_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Location.Click<\/option><option value=Click>Private Sub NumberOfReadingsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NumberOfReadingsToolStripMenuItem.Click<\/option><option value=Click>Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click<\/option><option value=Click>Private Sub PrintToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PrintToolStripMenuItem.Click, PrintToolStripMenuItem1.Click<\/option><option value=Click>Private Sub Print_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Print.Click<\/option><option value=Click>Private Sub ReadMeToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ReadMeToolStripMenuItem.Click, ReadMeToolStripMenuItem1.Click<\/option><option value=Click>Private Sub Results_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Results.DoubleClick<\/option><option value=Click>Private Sub Results_MouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Results.MouseClick<\/option><option value=Click>Private Sub Save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Save.Click<\/option><option value=Click>Private Sub Scan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Scan.Click<\/option><option value=Click>Private Sub SlideShowToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SlideShowToolStripMenuItem.Click, SlideShowToolStripMenuItem1.Click<\/option><option value=Click>Private Sub ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem1.Click<\/option><option value=Click>Private Sub ToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem2.Click<\/option><option value=Click>Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem3.Click<\/option><option value=Click>Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem4.Click<\/option><option value=Click>Private Sub ToolStripMenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem5.Click<\/option><option value=Click>Private Sub ToolStripMenuItem6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem6.Click<\/option><option value=Click>Private Sub ToolStripMenuItem7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem7.Click<\/option><option value=Click>Private Sub ToolStripMenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem8.Click<\/option><option value=Click>Private Sub ToolStripMenuItem9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem9.Click<\/option><option value=Click>Private Sub ToolStripMenuItemTop100_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItemTop100.Click<\/option><option value=Click>Private Sub ToolStripMenuItemTop10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItemTop10.Click<\/option><option value=Click>Private Sub ToolStripMenuItemTop200_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItemTop200.Click<\/option><option value=Click>Private Sub ToolStripMenuItemTop3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItemTop3.Click<\/option><option value=Click>Private Sub ToolStripMenuItemTop50_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItemTop50.Click<\/option><option value=Click>Private Sub ToolStripMenuItemTop5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItemTop5.Click<\/option><option value=Click>Private Sub WebsiteToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles WebsiteToolStripMenuItem.Click, WebsiteToolStripMenuItem1.Click<\/option><option value=Click>Private Sub XRiteToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles XRiteToolStripMenuItem.Click, XRiteToolStripMenuItem1.Click<\/option><option value=Click>Private Sub btnOn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOn.Click<\/option><option value=Click>Public Sub btnOff_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOff.Click<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>DoWork<br \/>\n<select title='DoWork Event (1)'><option value=''>DoWork Event (1) &#8230;<\/option><option value=DoWork>Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>DocumentCompleted<br \/>\n<select title='DocumentCompleted Event (1)'><option value=''>DocumentCompleted Event (1) &#8230;<\/option><option value=DocumentCompleted>Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>DoubleClick<br \/>\n<select title='DoubleClick Event (3)'><option value=''>DoubleClick Event (3) &#8230;<\/option><option value=DoubleClick>Private Sub Closest_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest.DoubleClick<\/option><option value=DoubleClick>Private Sub ColourName_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourName.DoubleClick<\/option><option value=DoubleClick>Private Sub Results_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Results.DoubleClick<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>DragDrop<br \/>\n<select title='DragDrop Event (3)'><option value=''>DragDrop Event (3) &#8230;<\/option><option value=DragDrop>Private Sub ColourName_DragDrop(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ColourName.DragDrop<\/option><option value=DragDrop>Private Sub Form1_DragDrop(ByVal sender As Object, ByVal e As DragEventArgs) Handles MyBase.DragDrop<\/option><option value=DragDrop>Private Sub FormulaNumber_DragDrop(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles FormulaNumber.DragDrop<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>DragEnter<br \/>\n<select title='DragEnter Event (3)'><option value=''>DragEnter Event (3) &#8230;<\/option><option value=DragEnter>Private Sub ColourName_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ColourName.DragEnter<\/option><option value=DragEnter>Private Sub Form1_DragEnter(ByVal sender As Object, ByVal e As DragEventArgs) Handles MyBase.DragEnter<\/option><option value=DragEnter>Private Sub FormulaNumber_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles FormulaNumber.DragEnter<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>DragLeave<br \/>\n<select title='DragLeave Event (3)'><option value=''>DragLeave Event (3) &#8230;<\/option><option value=DragLeave>Private Sub ColourName_DragLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourName.DragLeave<\/option><option value=DragLeave>Private Sub Form1_DragLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.DragLeave<\/option><option value=DragLeave>Private Sub FormulaNumber_DragLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FormulaNumber.DragLeave<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>DragOver<br \/>\n<select title='DragOver Event (1)'><option value=''>DragOver Event (1) &#8230;<\/option><option value=DragOver>Private Sub Form1_DragOver(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles MyBase.DragOver<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>DropDownClosed<br \/>\n<select title='DropDownClosed Event (1)'><option value=''>DropDownClosed Event (1) &#8230;<\/option><option value=DropDownClosed>Private Sub FileToolStripMenuItem1_DropDownClosed(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FileToolStripMenuItem1.DropDownClosed<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>FormClosed<br \/>\n<select title='FormClosed Event (1)'><option value=''>FormClosed Event (1) &#8230;<\/option><option value=FormClosed>Private Sub Form1_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>FormClosing<br \/>\n<select title='FormClosing Event (1)'><option value=''>FormClosing Event (1) &#8230;<\/option><option value=FormClosing>Public Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>KeyDown<br \/>\n<select title='KeyDown Event (5)'><option value=''>KeyDown Event (5) &#8230;<\/option><option value=KeyDown>Private Sub CPNumber_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles CPNumber.KeyDown<\/option><option value=KeyDown>Private Sub Code_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Code.KeyDown<\/option><option value=KeyDown>Private Sub ColourName_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles ColourName.KeyDown<\/option><option value=KeyDown>Private Sub Form1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown<\/option><option value=KeyDown>Private Sub FormulaNumber_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles FormulaNumber.KeyDown<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>KeyPress<br \/>\n<select title='KeyPress Event (2)'><option value=''>KeyPress Event (2) &#8230;<\/option><option value=KeyPress>Private Sub CPNumber_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles CPNumber.KeyPress<\/option><option value=KeyPress>Private Sub Form1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>Leave<br \/>\n<select title='Leave Event (4)'><option value=''>Leave Event (4) &#8230;<\/option><option value=Leave>Private Sub CPNumber_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CPNumber.Leave<\/option><option value=Leave>Private Sub ColourName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourName.Leave<\/option><option value=Leave>Private Sub ColourPalette_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette.Leave<\/option><option value=Leave>Private Sub FormulaNumber_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FormulaNumber.Leave<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>Load<br \/>\n<select title='Load Event (1)'><option value=''>Load Event (1) &#8230;<\/option><option value=Load>Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>MouseClick<br \/>\n<select title='MouseClick Event (2)'><option value=''>MouseClick Event (2) &#8230;<\/option><option value=MouseClick>Private Sub Form1_MouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseClick<\/option><option value=MouseClick>Private Sub Results_MouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Results.MouseClick<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>MouseDown<br \/>\n<select title='MouseDown Event (3)'><option value=''>MouseDown Event (3) &#8230;<\/option><option value=MouseDown>Private Sub FileToolStripMenuItem1_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles FileToolStripMenuItem1.MouseDown<\/option><option value=MouseDown>Private Sub FormulaNumber_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles FormulaNumber.MouseDown<\/option><option value=MouseDown>Private Sub Results_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Results.MouseDown<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>MouseHover<br \/>\n<select title='MouseHover Event (5)'><option value=''>MouseHover Event (5) &#8230;<\/option><option value=MouseHover>Private Sub Button1_MouseHover(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.MouseHover<\/option><option value=MouseHover>Private Sub ColourPalette_MouseHover(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette.MouseHover<\/option><option value=MouseHover>Private Sub Location_MouseHover(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Location.MouseHover<\/option><option value=MouseHover>Private Sub SourceIlluminant_MouseHover(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SourceIlluminant.MouseHover<\/option><option value=MouseHover>Private Sub btnOn_MouseHover(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOn.MouseHover<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>MouseLeave<br \/>\n<select title='MouseLeave Event (2)'><option value=''>MouseLeave Event (2) &#8230;<\/option><option value=MouseLeave>Private Sub Location_MouseLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Location.MouseLeave<\/option><option value=MouseLeave>Private Sub btnOn_MouseLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOn.MouseLeave<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>Navigated<br \/>\n<select title='Navigated Event (4)'><option value=''>Navigated Event (4) &#8230;<\/option><option value=Navigated>Private Sub WebBrowserALive_Navigated(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserNavigatedEventArgs) Handles WebBrowserALive.Navigated<\/option><option value=Navigated>Private Sub WebBrowserATest_Navigated(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserNavigatedEventArgs) Handles WebBrowserATest.Navigated<\/option><option value=Navigated>Private Sub WebBrowserMLive_Navigated(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserNavigatedEventArgs) Handles WebBrowserMLive.Navigated<\/option><option value=Navigated>Private Sub WebBrowserMTest_Navigated(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserNavigatedEventArgs) Handles WebBrowserMTest.Navigated<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>Resize<br \/>\n<select title='Resize Event (1)'><option value=''>Resize Event (1) &#8230;<\/option><option value=Resize>Private Sub Form1_Resize(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Resize<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>SelectedIndexChanged<br \/>\n<select title='SelectedIndexChanged Event (24)'><option value=''>SelectedIndexChanged Event (24) &#8230;<\/option><option value=SelectedIndexChanged>Private Sub Closest1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest1.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Closest2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest2.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Closest3_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest3.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Closest4_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest4.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Closest5_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Closest5.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub ColourPalette_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub ColourSystem_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourSystem.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Database_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Database.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub GroupC_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupC.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Language_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Language.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub LiveVsTest_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LiveVsTest.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Make_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Make.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Mode_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Mode.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub PublicAction_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PublicAction.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Results_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Results.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub SourceIlluminant_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SourceIlluminant.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub Store_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Store.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub SystemId_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SystemId.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub YearFr_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles YearFr.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub YearTo_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles YearTo.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub cmbBitRate_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbBitRate.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub cmbPorts_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbPorts.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub numChips_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles numChips.SelectedIndexChanged<\/option><option value=SelectedIndexChanged>Private Sub numReadings_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles numReadings.SelectedIndexChanged<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>Shown<br \/>\n<select title='Shown Event (1)'><option value=''>Shown Event (1) &#8230;<\/option><option value=Shown>Private Sub Form1_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>SizeChanged<br \/>\n<select title='SizeChanged Event (1)'><option value=''>SizeChanged Event (1) &#8230;<\/option><option value=SizeChanged>Private Sub ColourName_SizeChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourName.SizeChanged<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>TextChanged<br \/>\n<select title='TextChanged Event (7)'><option value=''>TextChanged Event (7) &#8230;<\/option><option value=TextChanged>Private Sub CPNumber_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CPNumber.TextChanged<\/option><option value=TextChanged>Private Sub Code_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Code.TextChanged<\/option><option value=TextChanged>Private Sub ColourName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourName.TextChanged<\/option><option value=TextChanged>Private Sub FormulaDetail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FormulaDetail.TextChanged<\/option><option value=TextChanged>Private Sub FormulaNumber_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FormulaNumber.TextChanged<\/option><option value=TextChanged>Private Sub Status_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Status.TextChanged<\/option><option value=TextChanged>Private Sub lblStatus_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lblStatus.TextChanged<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<td>VisibleChanged<br \/>\n<select title='VisibleChanged Event (3)'><option value=''>VisibleChanged Event (3) &#8230;<\/option><option value=VisibleChanged>Private Sub ColourPalette_VisibleChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPalette.VisibleChanged<\/option><option value=VisibleChanged>Private Sub ColourPaltext3_VisibleChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext3.VisibleChanged<\/option><option value=VisibleChanged>Private Sub ColourPaltext_VisibleChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColourPaltext.VisibleChanged<\/option><\/select>\n<\/td>\n<\/tr>\n<tr>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><!--\/body><\/html--><\/p>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d824' onclick='var dv=document.getElementById(\"d824\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"http:\/\/www.rjmprogramming.com.au\/wordpress\/?cat=52\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d824' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n","protected":false},"excerpt":{"rendered":"<p>When there is a big job to do I really really like Event Driven programming. All around programming work are events, whether that be for web work or desktop work. It has probably increased over time, because of the increased &hellip; <a href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/another-desktop-job-and-its-gui-event-analysis\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,14,17,33,34,39],"tags":[227,319,401,549,997,1166,1178,1363,1383,1435],"class_list":["post-824","post","type-post","status-publish","format-standard","hentry","category-colour-matching","category-event-driven-programming","category-gui","category-software","category-spectrophotometer","category-visual-studio","tag-colour-matching-2","tag-desktop","tag-event-driven","tag-gui","tag-programming","tag-software-2","tag-spectrophotometer","tag-vb-net","tag-visual-studio","tag-windows"],"_links":{"self":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/824"}],"collection":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/comments?post=824"}],"version-history":[{"count":0,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/824\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/media?parent=824"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/categories?post=824"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/tags?post=824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}