Projects, Forms, and Controls: Difference between revisions

From NSB App Studio
Jump to navigation Jump to search
Line 37: Line 37:
<tt>Msgbox NSBCurrentForm</tt>
<tt>Msgbox NSBCurrentForm</tt>


To change the background color of a form, blank out tthe 'backgroundimage' in Project Properties, then add these statements to your code:
To change the background color of a form, blank out 'backgroundimage' in Project Properties, then add these statements to your code:
<pre>
<pre>
Sub Main()
Sub Main()

Revision as of 13:44, 24 November 2012

2.5.1 Controls

A control is a visual object used by your program. Controls have Properties which can be queried and set, Methods which can be called as FUNCTION or SUB procedures, and Events which can be triggered by user actions, the operating system, or other programs.
A number of controls are included with NSB/App Studio. These include checkbox, commandButton, combobox, grid, textbox and other common objects.


2.5.2 Control Events

An event is a call that a control makes to your program, as a result of an action in the control. For instance, if you have a commandbutton in your program, an event will take place when the user taps the button. If your button's name is "MyButton", App Studio will call the function MyButton_onclick() in your program. If you do not have such a function, the event is ignored.
Another example would be if you were performing an SQL operation. Incoming data will cause the Success_Function event to be sent, which will then call Function Success_Function in your program.

2.5.3 Control Methods

A control can be hidden by using
myControl.hide
A control can be shown by executing
myControl.show


2.5.4 Forms

A Form is a group of controls that are shown and hidden at the same time. Form names should be unique: not used also for a variable or another control. A good convention is to add frm in front as in frmHelp. Forms can be full screen or partial screen. More than one form can show at a time, so it’s possible to have two forms side by side on devices with large screens. Do this by setting the bounds of the form in the form’s properties.


2.5.5 Form Methods

A form can be hidden by using
formName.hide
A form can be shown by executing
formName.show

To go to a new form,
ChangeForm(Form2)

To see the name of the current form
Msgbox NSBCurrentForm

To change the background color of a form, blank out 'backgroundimage' in Project Properties, then add these statements to your code:

Sub Main()
  document.body.style.backgroundColor=vbRed
End Sub

2.5.6 Form Events

Show and Hide events are called when you use ChangeForm() to go to a new form.

Example ChangeForm(Form2)

Function Form1_onhide()

'save our work

End Function

Function Form2_onshow()

'put in initial values

End Function


2.5.7 Program Events

When a program is started, code is run in the following order:

  1. Global code in forms
  2. Global code in Project Properties and Global Code
  3. Sub Main()

For clarity, it is best to always put all your global code in the Project Properties and Global Code section.
The forms are created at the same time as the global code is run.
After the first form is shown, a call is made to Sub Main(). If you have such a function, it will be executed.
When you exit the program, the window_onbeforeunload function is called. This is a good place to do housekeeping or save some data. If you return anything from this function, it is used in a confirm script.

Example
'Put this in your global code
MsgBox "This is the global code"
Sub Main()

MsgBox "Main"

End Sub
Function window_onunload()

MsgBox "Unloading!"

End Function