xbrowse bLDblClick y edición de columnas [solucionado]

xbrowse bLDblClick y edición de columnas [solucionado]

Postby manuelcalerosolis » Sat May 26, 2018 10:58 am

Trabajando con xBrowse trato de conseguir el siguiente comportamiento.

Al hacer doble click sobre ciertas columnas quiero q se lance la edición del registro en un dialogo, pero si hago doble-click sobre una columna editable, edite el valor de esa columna.

Esto lo consigo, pero cuando termino la edición de esa columna con la tecla RETURN, después lanza el evento bLDblClick, de xBrowse, y eso no me interesa.

¿ Como puedo evitar que se propague y me lance el evento bLDblClick ?

Muchas gracias.
Last edited by manuelcalerosolis on Thu May 31, 2018 8:31 am, edited 1 time in total.
User avatar
manuelcalerosolis
 
Posts: 149
Joined: Mon Oct 10, 2005 9:30 am
Location: Huelva - Spain

Re: xbrowse bLDblClick y edición de columnas

Postby FranciscoA » Sat May 26, 2018 3:51 pm

Manuel, intenta con cualquiera de las siguientes lineas:
WITH OBJECT oBrw
:bLDblClick := {|| if(oBrw:SelectedCol:cHeader $ "DESCRIP;TOTAL;VDESC", MsgInfo("Tu Function-Dialog"),) }
:bLDblClick := {|| if(oBrw:SelectedCol:nEditType = 0, MsgInfo("Tu Function-Dialog"),) }
Saludos
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: xbrowse bLDblClick y edición de columnas

Postby nageswaragunupudi » Sun May 27, 2018 10:08 am

Code: Select all  Expand view  RUN
#include "fivewin.ch"

function Main()

   local oDlg, oBrw

   USE CUSTOMER NEW
   DEFINE DIALOG oDlg SIZE 700,400 PIXEL TRUEPIXEL
   @ 20,20 XBROWSE oBrw SIZE -20,-20 PIXEL OF oDlg DATASOURCE "CUSTOMER" ;
      AUTOCOLS CELL LINES NOBORDER

   WITH OBJECT oBrw
      :nEditTypes    := EDIT_GET
      :bLDClickDatas := { || oBrw:EditSource() } // or { || youreditfunction() }
      :CreateFromCode()
   END

   ACTIVATE DIALOG oDlg CENTERED

return nil
 
Regards

G. N. Rao.
Hyderabad, India
User avatar
nageswaragunupudi
 
Posts: 10646
Joined: Sun Nov 19, 2006 5:22 am
Location: India

Re: xbrowse bLDblClick y edición de columnas

Postby manuelcalerosolis » Sun May 27, 2018 10:09 pm

Intento usar la variable blDClickDatas pero lo que obtengo es un error, he mirado en la clase TXBrowse y esa variable no existe.

Message not found: TXBROWSE:BLDCLICKDATAS

I try to use the blDClickDatas variable but what I get is an error, I looked in the TXBrowse class and that variable does not exist.

Message not found: TXBROWSE:BLDCLICKDATAS

Thanks.

FW version 17.0.5
User avatar
manuelcalerosolis
 
Posts: 149
Joined: Mon Oct 10, 2005 9:30 am
Location: Huelva - Spain

Re: xbrowse bLDblClick y edición de columnas

Postby cnavarro » Sun May 27, 2018 11:45 pm

Manuel, es :bLDClickData, busca la información sobre el XBrowse en el wiki

http://wiki.fivetechsoft.com/doku.php?i ... xbrwcolumn
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6549
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: xbrowse bLDblClick y edición de columnas

Postby nageswaragunupudi » Mon May 28, 2018 12:10 am

My sample works with FWH 17.05 also.

"nEditType" and "bLDClickData" are DATAS of TXBrwColumn.
When we suffix "s" to any column DATA and use it with XBrowse, it is translated and applied to all columns of the browse.

oBrw:nEditTypes := <n> is equivalent to AEval( oBrw:aCols, { |o| o:nEditType := <n> } )
Sameway,
oBrw:bLDClickDatas := <b> is equivalent to AEval( oBrw:aCols, { |o| o:bLDClickData := <b> } )

If you copied and code from the forum and pasted in your editor, please make sure that the <space> after the character ":" is removed. Normally this causes errors.
Regards

G. N. Rao.
Hyderabad, India
User avatar
nageswaragunupudi
 
Posts: 10646
Joined: Sun Nov 19, 2006 5:22 am
Location: India

Re: xbrowse bLDblClick y edición de columnas

Postby cnavarro » Mon May 28, 2018 1:00 am

nageswaragunupudi wrote:My sample works with FWH 17.05 also.

"nEditType" and "bLDClickData" are DATAS of TXBrwColumn.
When we suffix "s" to any column DATA and use it with XBrowse, it is translated and applied to all columns of the browse.

oBrw:nEditTypes := <n> is equivalent to AEval( oBrw:aCols, { |o| o:nEditType := <n> } )
Sameway,
oBrw:bLDClickDatas := <b> is equivalent to AEval( oBrw:aCols, { |o| o:bLDClickData := <b> } )

If you copied and code from the forum and pasted in your editor, please make sure that the <space> after the character ":" is removed. Normally this causes errors.


Mr Rao, you are right
( s ) in datas it is a fantastic functionality, but I do not remember her usually
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6549
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: xbrowse bLDblClick y edición de columnas

Postby manuelcalerosolis » Mon May 28, 2018 7:43 am

Siguiendo con este problema, descubro q no es tema de bLDblClick, sino de KeyDown(), yo tengo asignada a la tecla VK_RETURN una acción.

Esta acción se lanza cuando termino la edición sobre una columna con la tecla VK_RETURN, pero no se como detener esta propagación hacia el método KeyDown(), si la edición es realmente en una sola columna.

case nKey == VK_RETURN
if( !empty( ::oController ), ::oController:Edit(), )

Saludos
User avatar
manuelcalerosolis
 
Posts: 149
Joined: Mon Oct 10, 2005 9:30 am
Location: Huelva - Spain


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 54 guests