Object = NEW Class [ ( Constructor parameters... ) ] [ AS Name ]
Instantiates the class Class.
The object or class where the object is instantiated is its parent.
If a name is specified, the new object will be able to raise events by calling a public procedure or function in its parent. The name of this event handler is the name of the object followed by an underscore and the name of the event.
![]() |
NEW is not an operator. You can only use it within an assignment.
But you can use the New function instead. |
Two different objects can have the same event name. Thus, you can manage events of multiple objects in the same event procedure, provided these objects raise the same events.
hButton = NEW Button(ME) AS "MyButton" ... PUBLIC PROCEDURE MyButton_Click() PRINT "My button was clicked !" END
The next example creates 9*9*9 small TextBoxes to which can be accesses through the public Object[] array objIsImpossible
PUBLIC bIsInitialised AS Boolean
PUBLIC objIsImpossible AS Object[]
PUBLIC SUB Form_Open()
DIM iR AS Integer
DIM iR2 AS Integer
DIM iC AS Integer
DIM iC2 AS Integer
DIM iDigit AS Integer
DIM iX AS Integer
DIM objTextBox AS TextBox
IF bIsInitialised = FALSE THEN
objIsImpossible = NEW Object[] ' Need to create the array
iX = 0
FOR iR = 0 TO 8
FOR iC = 0 TO 8
FOR iDigit = 0 TO 8
iR2 = iDigit MOD 3
iC2 = iDigit / 3
objTextBox = NEW TextBox(ME) ' create the next of the 9*9*9 TextBox -es
objTextBox.X = (iR * 3 + iR2) * 12 + 2
objTextBox.y = (iC * 3 + iC2) * 12 + 2
objTextBox.Width = 10
objTextBox.Height = 10
objIsImpossible.Add(objTextBox, iX)
iX = iX + 1
NEXT ' iDigit
NEXT ' iC
NEXT ' iR
ENDIF
END