Adding ToolTips(Visual F# Windows Forms Application)

Tooltips are typically used to display a descriptive text when the mouse pointer hovers a control. To create a tooltip, use the following syntax:
let tooltipobjvaribale=new ToolTip()
For example:
let tip=new ToolTip()
One of the essential methods of the ToolTip object is the SetToolTip method which allows user to connect the tooltip to a specified control. SetToolTip has the following syntax:
tooltipobjvariable.SetToolTip(object variable of the control where you wanted to display the tooltip,”tooltiptext”)
Example:
tip.SetToolTip(addbutton,"Click here to add”)

The following steps demonstrates a simple example in using ToolTips.

The following example demonstrate a simple application using WebBrowser control:

1. Click Start>All Programs>Microsoft Visual Studio 2008>Microsoft Visual Studio 2008.

2. Click File>New>Project>Select Visual F# in the project types>Select F# application in the Visual Studio installed templates category.

3. Click the Project menu>Add reference>Click the .Net tab>Locate then double-click System.Windows.Forms.

4. Enter the following code after the line “// Learn more about F# at http://fsharp.net “:

//uses the F# standard library
open System
//use the drawing classes 
open System.Drawing
//specifies the location of the form class
open System.Windows.Forms 
//make a form add set its caption to “Add Tooltip”
let myfont=new Font("Arial",8.0f,FontStyle.Bold, GraphicsUnit.Point)
let tipform=new Form(Text="Add Tooltip",StartPosition=FormStartPosition.CenterScreen,AutoScaleMode=AutoScaleMode.Font)
//create a label
let desclabel=new Label(Text="Hover your mouse on the button...",Width=400,AutoSize=false)
//make a button and assign an “Exit” to it
let exitbutton=new Button(Text="Exit",Location=new System.Drawing.Point(200,220))
//create a tooltip and set its Title to “Use ToolTip”
//enable the balloon form
//add a warning icon. Other icon values are warning and info
let tip=new ToolTip(ToolTipTitle="Use ToolTip",IsBalloon=true,ToolTipIcon=ToolTipIcon.Warning)
//add the controls to our form
tipform.Controls.Add(desclabel)
desclabel.Font<-myfont
desclabel.ForeColor<-Color.Red
tipform.Controls.Add(exitbutton)
//when the mouse hovers the exit button
exitbutton.MouseHover.Add(fun tipmsg->
//display our tip
tip.SetToolTip(exitbutton,"Click here to quit"))
//quits the form when the exit button is clicked
exitbutton.Click.Add(fun quit->tipform.Close())
tipform.Show()
//executes our application
Application.Run(tipform)
5. Click the run icon to execute your application. You should now see an output similar to the following screen shot:

WebBrowser control(Visual F# Windows Forms Application)

WebBrowser control is a control used to display a web page or web document. To create a WebBrowser control in F#, use the following syntax:

let webbrowserobjvaribale=new WebBrowser()
For instance:
let browser=new WebBrowser()
One of the important methods of the WebBrowser object is the Navigate method which is used to navigate and display the specified URL. Navigate method has the following syntax:
Webbrowserobjvaribale.Navigate(“url”)
For Example:
Webbrowserobjvaribale.Navigate(“www.google.com”)
The following example demonstrate a simple application using WebBrowser control:

1. Click Start>All Programs>Microsoft Visual Studio 2008>Microsoft Visual Studio 2008.

2. Click File>New>Project>Select Visual F# in the project types>Select F# application in the Visual Studio installed templates category.

3. Click the Project menu>Add reference>Click the .Net tab>Locate then double-click System.Windows.Forms.
Do step 3 again and this time select System.Drawing.

4. Enter the following code after the line “// Learn more about F# at http://fsharp.net “:
// Learn more about F# at http://fsharp.net
//uses the standard F# library
open System
//use the drawing classes
open System.Drawing 
//specify the namespace memory location of the form class
open System.Windows.Forms
//creates a new font
let myfont=new Font("Arial",8.0f,FontStyle.Regular,GraphicsUnit.Point) 
//creates a new form
let webform=new Form(Text="Use WebBrowser",Width=400,StartPosition=FormStartPosition.CenterScreen,AutoScaleMode=AutoScaleMode.Font,FormBorderStyle=FormBorderStyle.FixedSingle)
let addresslabel=new Label(Location=new System.Drawing.Point(15, 5),Text="Enter URL:",AutoSize=true)
let urltextbox=new TextBox(Location=new System.Drawing.Point(80, 5))
let openpgbutton=new Button(Text="Open Page",Location=new System.Drawing.Point(190, 5))
let opennpbutton=new Button(Text="New Window",Location=new System.Drawing.Point(280, 5),AutoSize=true)
//create a webbrowser control and change its dock property to none
//so that it will not occupy the whole form
let browser=new WebBrowser(Dock=DockStyle.None,Size=new System.Drawing.Size(300, 200),Location=new System.Drawing.Point(40, 30),MinimumSize=new System.Drawing.Size(20, 20))               
//changes the font to arial
webform.Font<-myfont
//adds the controls into our form
webform.Controls.Add(addresslabel)
webform.Controls.Add(urltextbox)
webform.Controls.Add(openpgbutton)
webform.Controls.Add(opennpbutton)
webform.Controls.Add(browser)
//when the form is loaded
webform.Load.Add(fun defa->
            //display the google page
            browser.Navigate("www.google.com",false)) 
//locate and navigate the webaddress inpputed in the textbox
openpgbutton.Click.Add(fun openpage->
            browser.Navigate(urltextbox.Text,false))
//opens the page in a new window
opennpbutton.Click.Add(fun openpageinnewwindow->
            browser.Navigate(urltextbox.Text,true))
webform.Show()
[<STAThread>]
//executes our application
Application.Run(webform)

5. Click the run icon to execute your application. You should now see an output similar to the following screen shot:



If you want a more in depth explanation on this controls, visit the MSDN website at msdn.microsoft.com or the Microsoft F# Development Center at http://msdn.microsoft.com/en-us/fsharp/default.aspx