FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour xBrowse y Listbox
Posts: 729
Joined: Tue Oct 18, 2005 06:49 PM
xBrowse y Listbox
Posted: Mon Jan 26, 2009 05:29 AM
Con la siguientes instrucciones:
oBrw1:aCols[ 3 ]:nEditType( EDIT_GET_LISTBOX )
oBrw1:aCols[ 3 ]:aEditListTxt := aYesNo

creo una lista para seleccionar "Yes" o "No" en la columna 3 de mi browse.
Que debo hacer para que la seleccion que yo haga se quede en la celda del browse?
Parece que debo usar bOnEditPost pero no veo un ejemplo de sus uso.

George
Posts: 389
Joined: Mon Oct 13, 2008 11:26 AM
Re: xBrowse y Listbox
Posted: Mon Jan 26, 2009 11:31 AM
Private  aStatusInc  := {"Adicionar","Ignorar","Aberto","Remover"},;
         aStatusExt  := {"Extrair"  ,"Ignorar"}
****************************************************************************
   oCol:= oLbx:aCols[3]
   oCol:bStrData  := {|| CampoStatus("NOME")  }
   oCol:cHeader   := "Status"
   oCol:nWidth    := 70
   //-- Edição rápida através do browse
   oCol:nEditType      := EDIT_GET_LISTBOX
   oCol:aEditListTxt   := if(nRadBackup = 1, aStatusInc, aStatusExt)
   oCol:bOnPostEdit    := {|o,x| AlterarStatusGrid(x,oLbx:nRolSel()) }
   oCol:aEditListBound := if(nRadBackup = 1, {"A","I","O","R"}, {"E","I"})

****************************************************************************
static procedure AlterarStatusGrid(cValor,nPos)
****************************************************************************
* Alterar status através do grid
* Parametros: cValor
****************************************************************************
local i := nPos

   if lZipando
      if cValor = "A"                     //-- Adicionar
         AZIP[i,3] := cValor
      elseif cValor = "I"                 //-- Ignorar
         AZIP[i,3] := cValor
      elseif cValor = "E"                 //-- Extrair
         Msg("Valor não permitido")
      elseif cValor = "O" .And. AZIP[i,4] //-- Aberto
         AZIP[i,3] := cValor
      elseif cValor = "R" .And. AZIP[i,4] //-- Remover
         AZIP[i,3] := cValor
      else                                //-- Etc...
         Msg("Valor não permitido")
      end
      
   else
   
      if cValor = "A"                     //-- Adicionar
         Msg("Valor não permitido")
      elseif cValor = "I"                 //-- Ignorar
         AZIP[i,3] := cValor
      elseif cValor = "E"                 //-- Extrair
         AZIP[i,3] := cValor
      elseif cValor = "O" .And. AZIP[i,4] //-- Aberto
         Msg("Valor não permitido")
      elseif cValor = "R"                 //-- Remover
         Msg("Valor não permitido")
      else                                //-- Etc...
         Msg("Valor não permitido")
      end
   end

   oLbx:Refresh()

Return Nil

/*------------------------------------------------------------------------*/

****************************************************************************
static function CampoStatus(cTipo)
****************************************************************************
* Definir o valor do campo STATUS
****************************************************************************

local Result

   if Upper(cTipo) == "NOME"

      if STATUS == "R"
         Result := "Remover"
      elseif STATUS == "A"
         Result := "Adicionar"
      elseif STATUS == "E"
         Result := "Extrair"
      elseif STATUS == "O"
         Result := "Aberto"
      else
         Result := "Inalterado"
      end

   elseif Upper(cTipo) == "COR"

      if STATUS == "R"
         Result := nRgb(200,125,125)   // Vermelho
      elseif STATUS == "A"
         Result := nRgb(125,200,125)   // Verde
      elseif STATUS == "E"
         Result := nRgb(125,125,200)   // Azul
      elseif STATUS == "O"
         Result := nRgb(150,100,200)   // Roxo
      else    //-- "I"
         Result := nRgb(200,200,200)   // Cinza
      end

   end

Return Result

/*------------------------------------------------------------------------*/


Aqui estão os procedimentos que eu utilizo, pode se basear neles para fazer o seu :-)
Email: SamirSSabreu@gmail.com
xHarbour 1.2.3 + Fwhh 20.2
Posts: 729
Joined: Tue Oct 18, 2005 06:49 PM
Re: xBrowse y Listbox
Posted: Mon Jan 26, 2009 11:51 PM

Obrigado Sambom

George

Continue the discussion