Hide the main VFP system window

Most VFP applications appear as forms within the main VFP system window and users work with the menu bar in that window. This is a good model for many traditional FoxPro systems because they tend to be the sort of large-scale applications which users spend the entire day with; things like accounts packages and stock-control systems. Sometimes though you want a more modern appearance where the application appears as a free-floating form on the main Windows desktop. This is not difficult.

You need to make two adjustments to your design to achieve this effect. The first is to release the FoxPro form from the confines of the main VFP system window; the second is to turn off the main VFP window.

Releasing the form is easy.

Go to the Layout tab of the main form's properties window and change the ShowWindow property. This will be 0 (in screen) by default. Change it to 2 (As Top-Level Form). For the other forms in the application you have the choice of setting them to 1 (In Top-Level Form) or 2 (As Top-Level Form) depending on how you want them to behave.

Hiding the main VFP window is a little more difficult. The obvious way to do it is to set the Visible property of the screen object:

_screen.Visible = .F.

This will work but even if you make this the first line of the first program in your application, you will still see the VFP window flash on and then disappear. You need to find a way to turn the screen off before the application starts and the way to do this is to use the FoxPro Config file.

Create a new Config.Fpw file and put this line in it:

SCREEN=OFF

Note that there is no underscore here. The Config file is not referring to the _screen object.

If you need to distribute this application then you must make sure that the users have the right Config.Fpw file. You can avoid any confusion by including the config file in the project and building it into the executable.

Go to the Text Files entry of the Other tab of the Project Manager, Add File and select Config.Fpw. Fox will now build this file into the executable and you will not need to distribute the config file itself.

It is always worth building the Config.Fpw file into the executable even if you are not using it to hide the screen. The executable will use the built-in file even if there is another Config.Fpw in the same folder as the executable.

Warning

This use of the config file can make development work difficult unless you are careful. It is very difficult to open the FoxPro development environment if Fox has just read and processed a Config.Fpw file which has told it to turn the screen off. The solution is to put the runtime Config.Fpw into another folder away from the home folder which holds the pjx and pjt files and to put a dummy file into the home folder. VFP itself will use the local Config.Fpw and the executable will use the one which has been included in the project.

Use this technique to customise the FoxPro environment to make sure that your development environment is using the correct configuration file.

Related Items

Alvechurch Data - Microsoft FoxPro and Access Database Development and Training

Alvechurch Data are based close to Birmingham and provide Microsoft Access and Visual FoxPro training, development and support.

Read More

Autocomplete in Visual Fox Pro

Autocomplete in Visual Fox Pro

The textbox class in Visual FoxPro 9 has a new Autocomplete property which shows the user the previous values that have been entered in that textbox.

Read More

FoxPro Functions

FoxPro has always had functions like FREAD and FWRITE to read and write files at a low level. They can handle files which defeat the STRTOFILE and FILETOSTR functions.

Read More

Development Services

Alvechurch Data specialise in Microsoft Access and Visual FoxPro databases and have fifteen years experience developing databases for small business use.

Read More

Access and Visual FoxPro Training

Microsoft Access and Visual FoxPro training courses and workshops offered by Alvechurch Data in Birmingham.

Read More