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.

Posible BUG X6.01

Foro de Xailer profesional en español
User avatar
bingen
Posts: 397
Joined: Mon Jul 07, 2014 8:17 pm
Location: Bilbao
Contact:

Posible BUG X6.01

Postby bingen » Tue Jul 16, 2019 2:02 pm

Buenas xTeam , acabo de encontrarme con un problema que antes funcionaba correctamente.
Tenemos un método que con el clic derecho sobre un browase replica el menu de la optionlist que tiene el form copiando sus textos, iconos, onclick y demás. Hasta aqui sigue funcionando pero los objetos que están en la optionlist con lEnabled a false me mienten diciendo que están a true con lo cual lo que los usuarios no pueden hacer desde la optionlist lo hacen desde el popup.

FOR nItem := 1 TO Len( oSubMenu:aControls[ nExplorer ]:aItems )

DO CASE
CASE oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:nType = otSEPARATOR
oPopMenu:AddSeparator()
CASE oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:nType = otCHECK
WITH OBJECT TMenuItem():New( oPopMenu )
:cText := AllTrim( oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:cText )
:lChecked := oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:lChecked
:Cargo := { nExplorer, nItem }
:lEnabled := oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:lEnabled
:OnClick := {| o| oSubMenu:aControls[ o:Cargo[ 1 ] ]:aItems[ o:Cargo[ 2 ] ]:Click() }
:Create()
END
CASE oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:nType = otBUTTON
WITH OBJECT TMenuItem():New( oPopMenu )
oPopMenu:oImageList:Add( oSubMenu:aControls[ nExplorer ]:oImageList:GetBitmap( oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:nImage ) )
:cText := oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:cText
:Cargo := { nExplorer, nItem }
:lEnabled := oSubMenu:aControls[ nExplorer ]:aItems[ nItem ]:lEnabled
LogDebug(:cText,:lEnabled)
:OnClick := {| o| oSubMenu:aControls[ o:Cargo[ 1 ] ]:aItems[ o:Cargo[ 2 ] ]:Click() }
:nImage := oPopMenu:oImagelist:GetImageCount()
:Create()
END
ENDCASE

NEXT
BiSoft Desarrollo de software profesional
http://www.bisoft.es
User avatar
ignacio
Site Admin
Posts: 8581
Joined: Mon Apr 06, 2015 8:00 pm
Location: Madrid, Spain
Contact:

Re: Posible BUG X6.01

Postby ignacio » Wed Jul 17, 2019 11:16 am

Buenos días,

He simplificado tu ejemplo con el siguiente código:

Code: Select all

   LOCAL oMenu
   
   WITH OBJECT oMenu := TPopupMenu():New( Self )
      :Create()
      :AddItem( "uno" )
      :AddItem( "dos"):lEnabled := .F.
      :AddItem( "tres" )
   END

   oSender:ShowPopupMenu( oMenu, nPosX, nPosY )

   oMenu:End()


Pero no consigo que falle, el segundo menu item no está habilitado. Si me he perdido algo en tu explicación, lo siento. Un saludo
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
User avatar
bingen
Posts: 397
Joined: Mon Jul 07, 2014 8:17 pm
Location: Bilbao
Contact:

Re: Posible BUG X6.01

Postby bingen » Tue Aug 20, 2019 1:46 pm

Gracias Ignacio, he instalado la 6.2 y se ha solucionado.
BiSoft Desarrollo de software profesional
http://www.bisoft.es

Return to “Spanish”