Jump to content
Fivewin Brasil

Check no Browse


jufer

Recommended Posts

Estive a testar o PRG que anexo e detectei um erro quando faço um "check" no Browse. Como não tenho conhecimentos suficientes para ultrapassar a situação

peço uma ajuda a algum amigo que queira ajudar-me.

 

Antecipadamente agradeço

JuFer (Portugal)

//**************************************************************************************************************
#Include "FiveWin.Ch"

Func Main()
    Set Date Brit
    Set Cent On

    Set 3DLook On

    aHBitMaps := { LoadBitmap( GetResources(), "Check0" ), ; // BitMaps de 14 x 32
               LoadBitmap( GetResources(), "Check1" ) }


    Define Dialog oDlg From 0,0 To 200,200 Pixel

    aArqLo := { {.F.,.T.,.F.,.F.,"Estou Aqui 1"},;
            {.T.,.F.,.F.,.F.,"Estou Aqui 2"},;
            {.F.,.F.,.T.,.F.,"Estou Aqui 3"},;
            {.F.,.F.,.F.,.T.,"Estou Aqui 4"} }

    bVars := {||{" "," "}}
    aCabe := {"1","2","3","4","Teste"}
    aColu := {20,20,20,20,150}
    oLoca := TWBrowse():New(001,003,090,095, bVars,aCabe,aColu,oDlg, , , , , , , , , , , , , ,.T.)
    oLoca:lMChange := .F.
    oLoca:Set3dStyle()
    oLoca:SetArray(aArqLo)
    oLoca:bLDblClick := { | nRow, nCol | Teste1(nRow,nCol) }
    oLoca:nAt        := 1
    oLoca:bLine      := { || { aHBitmaps[Iif(aArqLo[oLoca:nAt][1],2,1)],aHBitmaps[Iif(aArqLo[oLoca:nAt][2],2,1)],aHBitmaps[Iif(aArqLo[oLoca:nAt][3],2,1)],aHBitmaps[Iif(aArqLo[oLoca:nAt][4],2,1)],aArqLo[oLoca:nAt][5] } }
    oLoca:Set3dStyle()
    oLoca:lMChange   := .F.
    oLoca:bGoTop     := { || oLoca:nAt := 1 }
    oLoca:bGoBottom  := { || oLoca:nAt := Eval( oLoca:bLogicLen ) }
    oLoca:bSkip      := { | nWant, nOld | nOld := oLoca:nAt, oLoca:nAt += nWant,;
                oLoca:nAt := Max( 1, Min( oLoca:nAt, Eval( oLoca:bLogicLen ) ) ),;
                oLoca:nAt - nOld }
    oLoca:bLogicLen  := { || Len( aArqLo ) }
    oLoca:cAlias     := "Array"                // Just put something


    Activate Dialog oDlg Center

Retu

Static Func Teste1(nRow,nCol)
Local nClickRow := nWRow( oDlg:hWnd, oDlg:hDC, nRow, 0 )
Local nClickCol
If nClickRow == oLoca:nRowPos
    nClickCol = oLoca:nAtCol( nCol )
Endif

For nX := 1 To 4
    aArqLo[nClickRow][nX] := .F.
Next

aArqLo[nClickRow][nClickCol] := .T.

oLoca:DrawSelect()
Retu("")
//*****************************************************************************

Link to comment
Share on other sites

  • 2 weeks later...
Em 16/07/2021 at 21:47, kapiaba disse:

Seria tipo um  setcheck no wbrowse? Esse wbrowse é do five, ou do Diego Ceccareli? Abs.

Sim, seria desse tipo. Ignoro de quem seja.

Peço desculpas por não ter respondido tão rápido quanto desejava mas estive ausente e sem computador.

Abraços

Link to comment
Share on other sites

Vou colocar um pequeno exemplo aqui

 

Aqui vc pode colocar um chechbox marcado e outro nulo
 

aHBitMaps    := { ReadBitmap( 0, oPub:wPathBmp + "CHECK_ON.BMP"  ),;
                              ReadBitmap( 0, oPub:wPathBmp + "CHECK_OFF.BMP"  ) }

         REDEFINE LISTBOX oBrM                                                ;
                  FIELDS aHBitmaps[ Max(1,cArqRecPag->Status + 1)]           ,;
                                          cArqRecPag->Empresa                ,;
                                      Str(cArqRecPag->Pedido)                ,;
                                          cArqRecPag->Docto                  ,;
                                     DToC(cArqRecPag->Dat_Venc)              ,;
                                     DToC(cArqRecPag->Dat_Emis)              ,;
                                     DToC(cArqRecPag->Dat_Pgto)              ,;
                                     DToC(cArqRecPag->Dat_Movi)              ,;
                                TransForm(cArqRecPag->Valor,oPub:Pict80S)    ,;
                                TransForm(cArqRecPag->Nf_e,"99999999")       ,;
                                TransForm(cArqRecPag->Juros,oPub:Pict40S)    ,;
                                TransForm(cArqRecPag->Descontos,oPub:Pict40S),;
                                          cArqRecPag->Nominal                 ;
                  HEADERS aCampos[1]                                         ,;
                          aCampos[2]                                         ,;
                          aCampos[3]                                         ,;
                          aCampos[4]                                         ,;
                          aCampos[5]                                         ,;
                          aCampos[6]                                         ,;
                          aCampos[7]                                         ,;
                          aCampos[8]                                         ,;
                          aCampos[9]                                         ,;
                          aCampos[10]                                        ,;
                          aCampos[11]                                        ,;
                          aCampos[12]                                        ,;
                          aCampos[13]                                         ;
                  ID 3000 OF oDlgM COLORS CLR_BLACK,CLR_B_03

Isso resolve ai seu problema 1 onde = "CHECK_ON.BMP" e 2 "CHECK_OFF.BMP"

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...