Posicionamiento de Menus popup
Publicado: Lun Oct 02, 2006 10:31 am
Hola,
Dado este código (por ejemplo)
LOCAL oPopMenu
WITH OBJECT oPopMenu := XA_MenuBegin( Self, .T., "Opciones de
listado")
XA_MenuItem( "Opción 1", {|| MsgInfo("1")},,;
.T., .F., .F., .F., ;
.T., "PRINTER1",,">Opciones de listado 1" )
XA_MenuItem( "Opción 2", {|| MsgInfo("2")},,;
.T., .F., .F., .F., ;
.T., "PRINTER1",,">Opciones de listado 2" )
END
Quisiera posicionar ese menu encima de un botón. Pero me gustaría
posicionarlo de tal manera que quede justo encima del botón. Para ello
necesitaría saber la altura del menú a mostrar teniendo en cuenta que el
número de items del menú puede ser variable. ¿Como se puede averiguar?
Sería algo así (osender es un botón del formulario):
METHOD Button1Click( oSender ) CLASS TForm2
Local oPopMenu := ::CreaPopMenu()
::ShowPopupMenu( oPopMenu, oSender:nLeft, oSender:nTop -
oPopMenu:nHeight )
RETURN Nil
Saludos y gracias,
José Luis Capel
Dado este código (por ejemplo)
LOCAL oPopMenu
WITH OBJECT oPopMenu := XA_MenuBegin( Self, .T., "Opciones de
listado")
XA_MenuItem( "Opción 1", {|| MsgInfo("1")},,;
.T., .F., .F., .F., ;
.T., "PRINTER1",,">Opciones de listado 1" )
XA_MenuItem( "Opción 2", {|| MsgInfo("2")},,;
.T., .F., .F., .F., ;
.T., "PRINTER1",,">Opciones de listado 2" )
END
Quisiera posicionar ese menu encima de un botón. Pero me gustaría
posicionarlo de tal manera que quede justo encima del botón. Para ello
necesitaría saber la altura del menú a mostrar teniendo en cuenta que el
número de items del menú puede ser variable. ¿Como se puede averiguar?
Sería algo así (osender es un botón del formulario):
METHOD Button1Click( oSender ) CLASS TForm2
Local oPopMenu := ::CreaPopMenu()
::ShowPopupMenu( oPopMenu, oSender:nLeft, oSender:nTop -
oPopMenu:nHeight )
RETURN Nil
Saludos y gracias,
José Luis Capel