Determines the class of an object or the datatype of a variable.
To determine |
Use |
---|---|
The class of an object |
|
The class (or datatype) of a variable |
Provides the class (or name) of the specified object.
Any control
controlname.Classname ( )
Argument |
Description |
---|---|
controlname |
The name of the control for which you want to know the name assigned to the control in the style window (the class of the control) |
String. Returns the class of controlname, the name assigned to the control. Returns the empty string ("") if an error occurs. If controlname is null, ClassName returns null.
The class is the name of an object. You assign the name when you save the object in its painter. Usually the class and the object itself appear to be the same (because PowerBuilder declares a variable with the same name as the class for the object). However, if you have declared multiple instances of an object, it is clear that the object’s class and the object’s variable are different.
If an ancestor object has been instantiated with one of its descendants, you can use ClassName to find the name of the descendant.
TypeOf reports an object’s built-in object type. The types are values of the Object enumerated datatype, such as Window! or CheckBox!. ClassName reports the class of the object in the ancestor-descendant hierarchy.
These statements return the class of the dragged control Source:
DragObject Source
string which_class
Source = DraggedObject()
which_class = Source.ClassName()
These statements return the class of the objects in the control array and store them in the_class array:
string the_class[]
windowobject the_object[]
integer i
FOR i = 1 TO UpperBound(control[])
the_object[i] = control[i]
the_class[i] = the_object[i].ClassName()
NEXT
Suppose your object hierarchy has a window named ancestor_window and it has descendants called win1 and win2, and the user can choose which descendant to open as a sheet. The following code tests which descendent window class is currently active (the MDI frame is w_frame):
ancestor_window active_window
active_window = w_frame.GetActiveSheet()
IF ClassName(active_window) = "win1" THEN
. . .
END IF
Provides the datatype of a variable.
ClassName ( variable )
Argument |
Description |
---|---|
variable |
The name of the variable for which you want to know its name (that is, its datatype) |
String. Returns the name of variable. Returns the empty string ("") if variable is an enumerated datatype or if an error occurs. If variable is null, ClassName returns null.
ClassName cannot determine the datatype if variable is an enumerated datatype. In this case, ClassName returns the empty string.
If gd_double is a global double variable, ClassName sets varname to double:
string varname
varname = ClassName(gd_double)