ich möchte meine eigenen DXE Function mit o:classDescribe() untersuchen.
wenn ich die Class "hard-codiere", also DXE_Listview(), dann funktioniert es.
wenn ich es über ein Macro mache findet er die Class nicht ... wieso ?
Code: Alles auswählen
#PRAGMA LIBRARY( "DXE.LIB")
// need for XbpNoteBook() / XbpWizard()
//
#PRAGMA LIBRARY( "XppUi3.LIB")
PROCEDURE MAIN(cXbPart)
LOCAL oError, bSaveError,oXbPart
DEFAULT cXbPart TO "DXE_ListView"
bSaveError := ErrorBlock()
ErrorBlock( {|e| Break(e)} )
BEGIN SEQUENCE
// das funktioniert
// oXbPart := DXE_Listview():new( AppDesktop() ,, {0,0}, {640,480})
// das geht mit allen XbParts ( die nicht MsComCtl.OCX benötigen ? )
* oXbPart := &cXbPart():new( AppDesktop() )
oXbPart := &cXbPart():new( AppDesktop(),, {0,0}, {640,480} )
// undokumentierte Class in XppUi3.LIB funktioniert auch aber nicht als Macro
// oXbPart := XbpNoteBook():New( AppDesktop(),, {0,0}, {640,480})
// oXbPart := XbpWizard():new( AppDesktop(),, {0,0}, {640,480} )
// oXbPart := XbpWizardPage():new( AppDesktop() ,, {0,0}, {640,480} )
// not need to use o:classDescribe()
* oXbPart:create()
InspectMember( oXbPart )
InspectMethod( oXbPart )
RECOVER USING oError
ErrorBlock( bSaveError )
Msgbox("Class "+cXbPart+" not found","Error")
END SEQUENCE
ErrorBlock( bSaveError )