RE:Saber Si Un Control Está Habilitado o NO
Si se trata de varios controles, creo que obligatoriamente debes hacer un recorrido por los controles y determinar si tienen habilitada la propiedad Enabled.
Ejemplo:
Integer n_controles
Checkbox as_Checkbox
CommandButton as_CommandB
RadioButton as_RadioB
SingleLineedit as_SingleL
FOR n_controles = 1 TO UpperBound(control[])
CHOOSE CASE TypeOf(Control[n_controles])
CASE CommandButton!
as_CommandB = control[n_controles]
if as_CommandB.Enabled = False then
messagebox("Aviso", "Existe un botón deshabilitado")
end if
CASE RadioButton!
as_RadioB = control[n_controles]
if as_RadioB.Enabled = False then
messagebox("Aviso", "Existe un radio deshabilitado")
end if
//... Y asi sucesivamente con todos los controles que tengas en tu ventana
END CHOOSE
NEXT
//--------------Fin-------------------------
Nota: No creo que haya una función, porque no todos los controles tienen la propiedad Enabled (ejemplo, una línea), debes nombrar exactamente los tipos de controles que contiene tu ventana.
Por si acaso, existe una pbl que te permite activar o desactivar de manera masiva todos los controles de tu ventana.Puedes bajarlo de:
http://www.iespana.es/powerbuilder/ejemplosPB/ejemplos.html
Se llama: "Propiedad.zip" (8 kb).