Buenas noches,
Estoy creando una peque帽a clase para hacer un formulario MDCHILD la cual esta definina en un archivo MAIN.prg
PUBLIC TBancos := TApplication()
.
.
.
.
.
CLASS TBancos
DATA cCodigo As OBJECT INIT NIL
DATA oNombre As OBJECT INIT NIL
DATA oNumero As OBJECT INIT NIL
DATA oWnd As OBJECT INIT NIL
DATA oFont As OBJECT INIT NIL
DATA oFld As OBJECT INIT NIL
DATA oBtn As OBJECT INIT NIL
DATA cTitle As OBJECT INIT NIL
METHOD New() CONSTRUCTOR
METHOD Activar()
ENDCLASS
METHOD New() CLASS TBancos
DEFINE WINDOW ::oWnd MDICHILD OF oWndPrinc;
FROM 10, 10 TO 300, 200 ;
TITLE ::cTitle ;
RETURN self
METHOD Activar() CLASS TBancos
ACTIVATE WINDOW ::oWnd MAXIMIZED
RETURN NIL
La estoy llamado desde otro archivo .prg de la siguiente manera:
FUNCTION BANCOS()
LOCAL oBancos
oBancos:=TBancos():New()
RETURN NIL
Intenta abrir un formulario pero me arroja el siguiente error
Application
Path and name: C:\MX\main.exe (32 bits)
Size: 2,065,408 bytes
Time from start: 0 hours 0 mins 2 secs
Error occurred at: 24/08/2011, 19:21:12
Error description: Error BASE/1605 Invalid self: NEW
Args:
[ 1] = O TBANCOS
[ 2] = O TMDICHILD
Stack Calls
Called from: C:\MX\PRG\main.PRG => TBANCOS:NEW(257)
Called from: C:\MX\PRG\bancos.PRG => BANCOS(55)
Called from: C:\MX\PRG\main.PRG => (b)MENUPRI(68)
Called from: .\source\classes\MENU.PRG => TMENU:COMMAND(452)
Called from: .\source\classes\WINDOW.PRG => TWINDOW:COMMAND(1046)
Called from: .\source\classes\MDIFRAME.PRG => TMDIFRAME:COMMAND(243)
Called from: => TMDIFRAME:HANDLEEVENT(0)
Called from: .\source\classes\WINDOW.PRG => _FWH(3418)
Called from: => WINRUN(0)
Called from: .\source\classes\WINDOW.PRG => TMDIFRAME:ACTIVATE(993)
Called from: C:\MX\PRG\main.PRG => MAIN(51)
FWH 25.12
Harbour/Hbmk2
Microsoft Visual C++
MySql 8.0
Antigravity