Hi all, I am stuck!
I have both BROWSE and GRID controls on pages of a TAB control (on a child FORM).
From BROWSE and GRID code I need to reference the parent TAB's properties.
My Question: How can I programmatically find:
The NAME of the "parent" TAB control (for a known child BOWSE or GRID control)?
Thank you for your help!
-----------------------------------
Google Spanish:
Hola a todos, estoy atascado!
Tengo los controles BROWSE y GRID en las páginas de un control TAB (en un FORM secundario).
Desde el código BROWSE y GRID, necesito hacer referencia a las propiedades de la TAB principal.
Mi pregunta: ¿Cómo puedo encontrar programáticamente:
¿El NAME del control TAB "principal" (para un control secundario conocido BOWSE o GRID)?
¡Gracias por tu ayuda!
Red2
Find a Child's Control's Parent Control
Moderator: Rathinagiri
- AUGE_OHR
- Posts: 2092
- Joined: Sun Aug 25, 2019 3:12 pm
- DBs Used: DBF, PostgreSQL, MySQL, SQLite
- Location: Hamburg, Germany
Re: Find a Child's Control's Parent Control
hi,
you BROWSE or GRID are "on TAB" and you want to know which TAB
you BROWSE or GRID are "on TAB" and you want to know which TAB
Code: Select all
nActive := Tab_Left.Value // which TAB is active
have fun
Jimmy
Jimmy
- SALINETAS24
- Posts: 667
- Joined: Tue Feb 27, 2018 3:06 am
- DBs Used: DBF
- Contact:
Re: Find a Child's Control's Parent Control
Hola, no termino de entenderte, pero quizás esto trozo de código que encontre te pueda servir.
Con esta función obtienes todos los controles de la WINDOW, y mientras tengas un solo "TAB" no tendrás problema.
Code: Select all
Function GetControls( cForm )
Local hWnd := GetFormHandle( cForm )
Local aControls := {} //Lista de Controles {ControlType, ControlName}
Local cNameControl:=""
AEVAL( _HMG_SYSDATA[ 4 ], { | hCtrWnd, nPos | IF( hCtrWnd == hWnd, AADD( aControls , { _HMG_SYSDATA[ 1, nPos ], _HMG_SYSDATA[ 2, nPos ] }), Nil ) } )
FOR nPos=1 TO LEN(aControls)
IF aControls[nPos][1]="TAB"
MSGBOX("Nombre TAB --> "+aControls[nPos][2])
cNameControl:= aControls[nPos][2]
EXIT
ENDIF
NEXT
// Ver la lista entera
MsgDebug( 'List of controls', aControls)
Return cNameControl
Como dijo el gran pensador Hommer Simpson..., - En este mundo solo hay 3 tipos de personas, los que saben contar y los que no.
-
- Posts: 276
- Joined: Sat May 18, 2019 2:11 pm
- DBs Used: Visual FoxPro, FoxPro
- Location: United States of America
Re: Find a Child's Control's Parent Control
Hi SALINETAS24,
¡Muchas gracias! Su código era exactamente lo que estaba buscando. ¡Problema resuelto!
Thank you so much! Your code was exactly what I was looking for. Problem solved!
Red2
¡Muchas gracias! Su código era exactamente lo que estaba buscando. ¡Problema resuelto!
Thank you so much! Your code was exactly what I was looking for. Problem solved!
Red2