A button to build a project

[Command button on the VFP desktop] Visual FoxPro is an object-oriented language and the development tool itself is object-oriented. The desktop is an object represented by the _screen keyword and has properties and methods in the same way as any other object. A simple use of these is to change the colour and font of the screen:

_screen.backcolor = RGB(0, 0, 0)
_screen.forecolor = RGB(0, 255, 0)
_screen.fontname = "Courier New"

This gives a retro green-on-black screen in typewriter font.

A more sophisticated technique is to treat the FoxPro desktop as a container and add objects to it at runtime. This example adds a command button to the the desktop as a useful shortcut during development work:

There are two stages to the job. The first is to add the command button to the desktop; the second is to bind its Click event to some useful code. In this case, it's the code that that will build the VFP executable from a project

Public oHandler

*-- We don't want to see progress reports as the
*-- button object is created.
Set Talk Off

*-- Bind the click event to a handler
oHandler = Newobject ("ClickHandler")

With _Screen
  .AddObject ('cmdBuild', 'commandbutton')
  Bindevent (_Screen.cmdBuild, "Click", oHandler, "Build")
  With .cmdBuild
   *-- Set the appearance of the button first ...
   .Caption = "Build"
   .Top = 10
   .Left = 10
   .Height = 27
   *-- ... then make it visible.
   .Visible = .T.
  Endwith
Endwith

Set Talk On

Return

*----------------------------------------
Define Class ClickHandler As Session
  Procedure Build
   Build Exe webadmin.exe From webadmin Recompile
  Return
Enddefine

The button saves the four or five mouse-clicks needed to build an executable from the VFP Project Manager. It might not save much time on a single build but the savings build up during the day.

Use the VFP startup technique described here to create this command button automatically as Visual FoxPro loads.

Related Items

Starting FoxPro

Startup options for the FoxPro development environment.

Read More

FoxPro 101 - Build an executable

Visual FoxPro Tutorial - Build a Windows executable.

Read More

FoxPro 101 - Project Manager

Visual FoxPro Tutorial - Using the Project Manager.

Read More