Se puede anidar un with object dentro de otro with object ?
Atentamente : Francisco Sanchez GERENTE GRUPO ST
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
with object
- ignacio
- Site Admin
- Mensajes: 9253
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
with object
Francisco,
Si pero logicamente ':' siempre apunta al último WITH object.
Saludos
--
Ignacio Ortiz
www.xailer.com
"Francisco" <total@arrakis.es> escribió en el mensaje
news:41ac9442$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Se puede anidar un with object dentro de otro with object ?
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST
>
>
Si pero logicamente ':' siempre apunta al último WITH object.
Saludos
--
Ignacio Ortiz
www.xailer.com
"Francisco" <total@arrakis.es> escribió en el mensaje
news:41ac9442$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Se puede anidar un with object dentro de otro with object ?
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST
>
>
-
- Mensajes: 620
- Registrado: Jue Mar 23, 2006 2:39 am
with object
Francisco:
> Se puede anidar un with object dentro de otro with object ?
Por su puesto, este es un fragmento de mi codigo Xailer:
METHOD ConfiguraControles(cNomArch) CLASS TForm1
LOCAL oDbfBrowse, cAlias, oStatBar, nAdsServerType := 0
LOCAL oReBar, aIndex := {"<Ninguno>"}, oCombo, oBarCombo
LOCAL nIndices := 1
/* determinamos tipo de servidor ADS */
nAdsServerType := AdsIsServerLoaded(cFilePath(cNomArch))
/* abrimos base de datos */
cAlias := CnwOpenDbf(cNomArch,1,.T.)
IF EMPTY(cAlias)
MsgStop("No fue posible abrir la base de datos")
ELSE
DO WHILE .T.
IF ! EMPTY((cAlias)->(OrdName(nIndices)))
AADD(aIndex,(cAlias)->(OrdName(nIndices)))
nIndices++
ELSE
EXIT
ENDIF
ENDDO
AADD(::aAlias,cAlias)
WITH OBJECT ::oFolder1
:ADDITEM(cFileName(cNomArch))
:nIndex := LEN(:aPages)
/* creamos el ReBar */
WITH OBJECT oReBar := TReBar():New(:aPages[LEN(:aPages)])
:nAlign := alTOP
:Create()
END WITH
WITH OBJECT oCombo := TCOMBOBOX():New(oRebar)
:SetItems(aIndex)
:Cargo := cAlias
:nWidth := 100
:nStyle := csDROPDOWNLIST
:OnChange := {|oSender, nIndex|
(oSender:Cargo)->(OrdSetFocus(oSender:aItems[nIndex])),;
oDbfBrowse:Refresh(),;
oStatBar:SetText(3,"Llave de índice:
"+(oSender:Cargo)->(OrdKey(nIndex-1))),;
oStatBar:SetText(4,ALLTRIM(STR((cAlias)->(OrdKeyNo())))+" /
"+ALLTRIM(STR((cAlias)->(OrdKeyCount())))),;
oStatBar:UpdatePanels()}
:Create()
END WITH
WITH OBJECT oBarCombo := TReBarBand():New(oRebar)
:oControl := oCombo
:Create()
END WITH
/* el orden de creacion de los controles es muy importante */
WITH OBJECT oStatBar := TstatusBar():New(:aPages[LEN(:aPages)])
:Create()
:nClrPane := RGB(0,0,255)
:SetParts(4)
:SetText(1,cNomArch)
DO CASE
CASE nAdsServerType == 0
:SetText(2,"Sin Servidor ADS")
CASE nAdsServerType == 1
:SetText(2,"Servidor LOCAL")
CASE nAdsServerType == 2
:SetText(2,"Servidor REMOTO")
ENDCASE
:SetText(3,"Llave de índice: Ninguna ")
:SetText(4,ALLTRIM(STR((cAlias)->(OrdKeyNo())))+" /
"+ALLTRIM(STR((cAlias)->(OrdKeyCount()))))
END WITH
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST
>
>
> Se puede anidar un with object dentro de otro with object ?
Por su puesto, este es un fragmento de mi codigo Xailer:
METHOD ConfiguraControles(cNomArch) CLASS TForm1
LOCAL oDbfBrowse, cAlias, oStatBar, nAdsServerType := 0
LOCAL oReBar, aIndex := {"<Ninguno>"}, oCombo, oBarCombo
LOCAL nIndices := 1
/* determinamos tipo de servidor ADS */
nAdsServerType := AdsIsServerLoaded(cFilePath(cNomArch))
/* abrimos base de datos */
cAlias := CnwOpenDbf(cNomArch,1,.T.)
IF EMPTY(cAlias)
MsgStop("No fue posible abrir la base de datos")
ELSE
DO WHILE .T.
IF ! EMPTY((cAlias)->(OrdName(nIndices)))
AADD(aIndex,(cAlias)->(OrdName(nIndices)))
nIndices++
ELSE
EXIT
ENDIF
ENDDO
AADD(::aAlias,cAlias)
WITH OBJECT ::oFolder1
:ADDITEM(cFileName(cNomArch))
:nIndex := LEN(:aPages)
/* creamos el ReBar */
WITH OBJECT oReBar := TReBar():New(:aPages[LEN(:aPages)])
:nAlign := alTOP
:Create()
END WITH
WITH OBJECT oCombo := TCOMBOBOX():New(oRebar)
:SetItems(aIndex)
:Cargo := cAlias
:nWidth := 100
:nStyle := csDROPDOWNLIST
:OnChange := {|oSender, nIndex|
(oSender:Cargo)->(OrdSetFocus(oSender:aItems[nIndex])),;
oDbfBrowse:Refresh(),;
oStatBar:SetText(3,"Llave de índice:
"+(oSender:Cargo)->(OrdKey(nIndex-1))),;
oStatBar:SetText(4,ALLTRIM(STR((cAlias)->(OrdKeyNo())))+" /
"+ALLTRIM(STR((cAlias)->(OrdKeyCount())))),;
oStatBar:UpdatePanels()}
:Create()
END WITH
WITH OBJECT oBarCombo := TReBarBand():New(oRebar)
:oControl := oCombo
:Create()
END WITH
/* el orden de creacion de los controles es muy importante */
WITH OBJECT oStatBar := TstatusBar():New(:aPages[LEN(:aPages)])
:Create()
:nClrPane := RGB(0,0,255)
:SetParts(4)
:SetText(1,cNomArch)
DO CASE
CASE nAdsServerType == 0
:SetText(2,"Sin Servidor ADS")
CASE nAdsServerType == 1
:SetText(2,"Servidor LOCAL")
CASE nAdsServerType == 2
:SetText(2,"Servidor REMOTO")
ENDCASE
:SetText(3,"Llave de índice: Ninguna ")
:SetText(4,ALLTRIM(STR((cAlias)->(OrdKeyNo())))+" /
"+ALLTRIM(STR((cAlias)->(OrdKeyCount()))))
END WITH
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST
>
>