Popup Menu Item Click
Publicado: Mar Sep 10, 2013 7:04 am
Senhores preciso saber qual item foi clicado no menu popup.
Eu tenho uma Tabela DBF chamada PRODUTO que possui 1 índice CDX com 5 TAGs
sendo elas: PRODUTO1, PRODUTO2, PRODUTO3, PRODUTO4, PRODUTO5.
Com o código abaixo eu crio um POPUP menu com as 1 item chamado Natural
Order, 1 Separador e mais as 5 TAGs, porém ao clicar no item PRODUTO2 por
exemplo, quando executa o método TEST o N não passa a posição correta que eu
esperava saber qual item do Menu Popup foi clicado, ele vai com o valor 12,
não sei como resolver isto, alguém poderia ajudar?
METHOD FormInitialize( oSender ) CLASS frmBrowseTabela
LOCAL cAlias, oBrw := ::oDBBrowse1, n := 1
cAlias := Alias()
oBrw := ::oDBBrowse1
WITH OBJECT ::oPopupMenuIndex
:AddItem( "Ordem natural" ):OnClick := { || (
cAlias )->(DbSetOrder(0)), oBrw:Refresh(), oBrw:SetFocus(),
::DBBrowse1Change() }
IF ( nTags := ( cAlias )->( OrdCount() ) ) > 0
:AddSeparator()
ENDIF
FOR n = 1 to nTags
IF ! Empty( OrdName( n ) )
IF ! Empty( OrdName( 1 ) )
DbSetOrder( OrdName( 1 ) )
DbGoTop()
ENDIF
:AddItem( OrdName( n )):OnClick := { || ::TEST( oSender,
cAlias, oBrw, n) }
ENDIF
NEXT
END
RETURN Nil
METHOD TEST( oSender, cAlias, oBrw, n)
( cAlias )->( OrdSetFocus( OrdName( n ) ) ) //--> Aki eu queria q o N
viesse com a posição que foi clicada no Menu Popup
oBrw:Refresh()
oBrw:SetFocus()
::DBBrowse1Change()
RETURN NIL
Saludos
Cassiano.
Eu tenho uma Tabela DBF chamada PRODUTO que possui 1 índice CDX com 5 TAGs
sendo elas: PRODUTO1, PRODUTO2, PRODUTO3, PRODUTO4, PRODUTO5.
Com o código abaixo eu crio um POPUP menu com as 1 item chamado Natural
Order, 1 Separador e mais as 5 TAGs, porém ao clicar no item PRODUTO2 por
exemplo, quando executa o método TEST o N não passa a posição correta que eu
esperava saber qual item do Menu Popup foi clicado, ele vai com o valor 12,
não sei como resolver isto, alguém poderia ajudar?
METHOD FormInitialize( oSender ) CLASS frmBrowseTabela
LOCAL cAlias, oBrw := ::oDBBrowse1, n := 1
cAlias := Alias()
oBrw := ::oDBBrowse1
WITH OBJECT ::oPopupMenuIndex
:AddItem( "Ordem natural" ):OnClick := { || (
cAlias )->(DbSetOrder(0)), oBrw:Refresh(), oBrw:SetFocus(),
::DBBrowse1Change() }
IF ( nTags := ( cAlias )->( OrdCount() ) ) > 0
:AddSeparator()
ENDIF
FOR n = 1 to nTags
IF ! Empty( OrdName( n ) )
IF ! Empty( OrdName( 1 ) )
DbSetOrder( OrdName( 1 ) )
DbGoTop()
ENDIF
:AddItem( OrdName( n )):OnClick := { || ::TEST( oSender,
cAlias, oBrw, n) }
ENDIF
NEXT
END
RETURN Nil
METHOD TEST( oSender, cAlias, oBrw, n)
( cAlias )->( OrdSetFocus( OrdName( n ) ) ) //--> Aki eu queria q o N
viesse com a posição que foi clicada no Menu Popup
oBrw:Refresh()
oBrw:SetFocus()
::DBBrowse1Change()
RETURN NIL
Saludos
Cassiano.