Clipper On Line • Ver Tópico - Hwgui 2.22 build 2

Hwgui 2.22 build 2

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Hwgui 2.22 build 2

Mensagempor gilbertosilverio » 25 Dez 2018 09:05

Ola Alexandre,

#include hwgui.ch, mescla as duas includes declaradas...
gilbertosilverio
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 332
Data de registro: 18 Jan 2009 09:39
Cidade/Estado: Ribeirao Pires - SP
Curtiu: 1 vez
Mens.Curtidas: 23 vezes

Hwgui 2.22 build 2

Mensagempor Itamar M. Lins Jr. » 25 Dez 2018 09:20

Ola!
Eu mesmo demorei aqui para achar.
Tem que contar como achar o erro, abrir o browse array e teclar a seta para esquerda 3 vezes.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Hwgui 2.22 build 2

Mensagempor Fernando queiroz » 25 Dez 2018 09:58

Itamar M. Lins Jr. escreveu:Ola!
Sobre o problema do Designer não trabalhar com PRG.

Resposta do Kresin:
Yes, it is. I didn't updated export to prg for a long time and don't know now, when will be able to do this. So, I recommend to use xml format only. If there are real reasons to use prg, we may consider them and try to find a suitable decision with xml.


Sim. Eu não atualizei a exportação para prg por um longo tempo e não sei agora, quando será capaz de fazer isso. Por isso, recomendo usar somente o formato xml. Se houver razões reais para usar o prg, podemos considerá-las e tentar encontrar uma decisão adequada com xml.


Saudações,
Itamar M. Lins Jr.


Itamar eu fiz alguns teste com a tela em XML e estou achando muito interessante, acho que vale a pena continuar por esse caminho,

vi que pode colocar ate código dentro do XML e não precisa recompilar, so mandar uma nova tela e funciona, ate mesmo o app sendo executado, só entrar na rotina novamente e carregar a tela nova.

telasgc.jpg
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes

Hwgui 2.22 build 2

Mensagempor gilbertosilverio » 25 Dez 2018 10:01

Ola Itamar,

O duro e se expressar em português, traduzir pra inglês e ele do inglês pro russo, imagina a salada... kkkkk
gilbertosilverio
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 332
Data de registro: 18 Jan 2009 09:39
Cidade/Estado: Ribeirao Pires - SP
Curtiu: 1 vez
Mens.Curtidas: 23 vezes

Hwgui 2.22 build 2

Mensagempor gilbertosilverio » 26 Dez 2018 07:11

Ola Amigos,

/*
* $Id: Changelog 2760 2018-12-26 08:32:46Z alkresin $
*/

/* Use this format for the entry headers:
YYYY-MM-DD HH:MM UTC[-|+]hhmm Your Full Name <your_email@address>
For example:
2002-12-01 23:12 UTC+0100 Foo Bar <foo.bar@foobar.org>
*/

2018-12-26 11:32 UTC+0300 Alexander Kresin <alex@belacy.ru>
* source/winapi/hbrowse.prg
! Fixed drawing for the case if :lAdjRight is set to .f.

2018-12-25 15:36 UTC+0300 Alexander Kresin <alex@belacy.ru>
* source/winapi/draw.c
! Small fix.


Um dos erros corrigido, só falta o FILTER...
gilbertosilverio
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 332
Data de registro: 18 Jan 2009 09:39
Cidade/Estado: Ribeirao Pires - SP
Curtiu: 1 vez
Mens.Curtidas: 23 vezes

Hwgui 2.22 build 2

Mensagempor Itamar M. Lins Jr. » 26 Dez 2018 23:47

Ola!
Um dos erros corrigido, só falta o FILTER...

Ele pediu que vc faça um exemplo demonstrando o erro. E que ele possa executar. Da forma como está ele não conseguiu ver o problema.
O DBF de remédio ? Faz bem pequeno, igual ao colrblock.prg só olhar lá como foi feito.

I've read the source, posted by Gilberto, and the whole thread at the forum, but his code includes call of functions, which are not published, it opens databases, which I haven't. What can I do with this?
I need a self-contained sample with data to reproduce the problem. The datafiles may contain a minimum of records - just to see what happens. It is better to remove code, call of functions, which doesn't relate to the problem.

Then, Gilberto writes that there aren't samples enough in HwGUI. Yes, this is true. But in could be more helpful, if he and other guys suggested concrete issues, which need to be included in samples, in tutorial, which are not clear enough.

Regards, Alexander.


E ele fala sobre os exemplos... bem eu disse quase a mesma coisa.

Tradução do google.
Então, Gilberto escreve que não há exemplos suficientes em HwGUI. Sim isso é verdade. Mas poderia ser mais útil, se ele e outros caras sugerissem problemas concretos, que precisam ser incluídos nos exemplos, no tutorial, que não estão suficientemente claros.


Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Hwgui 2.22 build 2

Mensagempor gilbertosilverio » 27 Dez 2018 12:38

Ola Itamar,

Fiz este rotina para simular o erro, baseado no BROWSEFILTER, que esta na pasta SAMPLES da 2.17, se voce quiser testar para ver se não e um erro meu, e so pegar os dois arquivos DBF que estão la.

/*
   Copyright (c) Luiz Henrique lh.santos at ibest.com.br
*/
#include "hwgui.ch"
#INCLUDE "ORD.CH"

STATIC nLastRecordFilter  := 0
STATIC nFirstRecordFilter := 0

FUNCTION Main()
  PRIVATE frmTesteBrowse, xVLR:=0

  INIT WINDOW frmTesteBrowse MAIN TITLE "Teste HBrowse com filtro" ;
       COLOR COLOR_3DLIGHT+1 ;
       AT 0,0 ;
       SIZE hwg_Getdesktopwidth(), hwg_Getdesktopheight() - 28 ;
       FONT HFont():Add("MS Sans Serif", 0, -12)

  USE MESAS NEW SHARED
  INDEX ON mesa TO indmesas
  SET INDEX TO indmesas

  USE ITENS NEW SHARED
  INDEX ON mesa TO inditens
  SET INDEX TO inditens

  DBSELECTAREA("MESAS")

  @ 010,061 BROWSE DATABASE brwMesas ;
            SIZE 353,283 ;
            STYLE WS_VSCROLL + WS_HSCROLL ;
            ON POSCHANGE {|| EVAL(brwItens:bFirst), brwItens:Refresh()}

  brwMesas:bColorSel := 16711680 //Cor da linha do browse

  ADD COLUMN FIELDBLOCK("mesa") TO brwMesas ;
    HEADER "Mesa";
    TYPE "C" LENGTH 6 DEC 0 ;
    JUSTIFY HEAD DT_LEFT ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("garcon") TO brwMesas ;
    HEADER "Garcom" ;
    TYPE "C" LENGTH 3 DEC 0 ;
    JUSTIFY HEAD DT_LEFT ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("total") TO brwMesas ;
    HEADER "Total" ;
    TYPE "N" LENGTH 10 DEC 2 ;
    PICTURE "@E 999,999.99" ;
    JUSTIFY HEAD DT_RIGHT ;
    JUSTIFY LINE DT_RIGHT

  brwMesas:Refresh()

  DBSELECTAREA("ITENS")

  @ 375,061 BROWSE brwItens FILTER AUTOEDIT ;
        SIZE 415,283 ;
     STYLE WS_VSCROLL + WS_HSCROLL  ;
     ON UPDATE {|| SOMA(xVLR) }     ;
     FIRST {|| DBSEEK(mesas->mesa)} ;
     WHILE {|| mesa == mesas->mesa}

  brwItens:bColorSel := 16711680

  ADD COLUMN FIELDBLOCK("mesa") TO brwItens ;
    HEADER "Mesa";
    TYPE "C" LENGTH 6 DEC 0 ;
    JUSTIFY HEAD DT_LEFT ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("estornado") TO brwItens ;
    HEADER "Estornado";
    TYPE "C" LENGTH 1 DEC 0 ;
    JUSTIFY HEAD DT_LEFT ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("nomeprod") TO brwItens ;
    HEADER "Produto" ;
    TYPE "C" ;
    LENGTH 40 ;
    DEC 0 ;
    JUSTIFY HEAD DT_LEFT ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("qtd") TO brwItens ;
    HEADER "Quantidade";
    TYPE "N" LENGTH 10 DEC 3 ;
    JUSTIFY HEAD DT_RIGHT ;
    JUSTIFY LINE DT_RIGHT ;
    EDITABLE

  BRWITENS:acolumns[04]:footing   := TRANSF( xVLR, [@E 999,999] )

  brwItens:Refresh()

  ACTIVATE WINDOW frmTesteBrowse
RETURN NIL

FUNCTION SOMA()
   xVLR:=0
   IF BRWITENS:nRecords > 0
      ITENS->(DBGOTOP())
      ITENS->(OrdScope( TOPSCOPE   , mesas->mesa ))
      ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
      DO WHILE !EOF()
         xVLR += ITENS->QTD
         ITENS->(DBSKIP())
      ENDDO
      BRWITENS:acolumns[04]:footing    := TRANSF( xVLR, [@E 999,999] )
      ITENS->(OrdScope( TOPSCOPE   , NIL ))
      ITENS->(OrdScope( BOTTOMSCOPE, NIL ))
   ENDIF
   BRWITENS:Refresh()
RETURN NIL


Fiz umas pequenas alterações, e acrescentei a função SOMA(),para poder demonstrar o erro, que a meu ver esta no ON UPDATE, pois se você tirar o ON UPDATE, ele funciona normalmente.

O erro ocorre, se você vai ate a segunda linha do segundo browse e altera a qtde, se voce teclar a seta para baixa, vai ver que ele tras as informações do item anterior.

Outro detalhe, se voce fiz isso na primeira linha do segundo browse, não ocorre o erro.

Me desculpe se não soube me explicar, mais creio que se você compilar vai achar o erro.

Como te disse, não sei se e um erro meu, devido aos meus poucos conhecimento, mais este erro ocorre, por que quero atualizar o valor "FOOTING", que uso na minha rotina em 2.17
Anexos
Capturar.JPG
Tela inicial, sem alterar a quantidade
Capturar2.JPG
Alterei a quantidade e tecle seta para baixo
gilbertosilverio
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 332
Data de registro: 18 Jan 2009 09:39
Cidade/Estado: Ribeirao Pires - SP
Curtiu: 1 vez
Mens.Curtidas: 23 vezes

Hwgui 2.22 build 2

Mensagempor Fernando queiroz » 27 Dez 2018 15:05

AMIGO verificando seu fonte techo quase certeza que o problema esta em:
ITENS->(DBGOTOP())
ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))

tente assim

ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
ITENS->(DBGOTOP())

explicação:

depois de fazer o filtro é que você tem de ir para o começo do filtro :)) :)) :))
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes

Hwgui 2.22 build 2

Mensagempor asimoes » 27 Dez 2018 15:34

O problema está no uso DBGOTOP que tem que estar após o OrdScope para funcionar.
Apó o Nil tem que fazer o DBGOTOP

FUNCTION SOMA()
      xVLR:=0
      IF BRWITENS:nRecords > 0
         ITENS->(OrdScope( TOPSCOPE   , mesas->mesa ))
         ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
         ITENS->(DBGOTOP())
         DO WHILE !EOF()
            xVLR += ITENS->QTD
            ITENS->(DBSKIP())
         ENDDO
         BRWITENS:acolumns[04]:footing    := TRANSF( xVLR, [@E 999,999] )
         ITENS->(OrdScope( TOPSCOPE   , NIL ))
         ITENS->(OrdScope( BOTTOMSCOPE, NIL ))
         ITENS->(DBGOTOP())
      ENDIF
      BRWITENS:Refresh()
   RETURN NIL
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Hwgui 2.22 build 2

Mensagempor gilbertosilverio » 27 Dez 2018 16:18

Ola Simões,

Eu coloquei a carroça na frente dos cavalos... e que fiz na correria o exemplo em nem me atentei ao erro.

O problema esta no refresh do UPDATE, deve ser algo bem pequeno mesmo.

Olha a imagem com a correção do dbgotop(), continua da mesma maneira.
Anexos
Capturar.JPG
gilbertosilverio
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 332
Data de registro: 18 Jan 2009 09:39
Cidade/Estado: Ribeirao Pires - SP
Curtiu: 1 vez
Mens.Curtidas: 23 vezes

Hwgui 2.22 build 2

Mensagempor Fernando queiroz » 28 Dez 2018 14:26

gilbertosilverio escreveu:Ola Simões,

Eu coloquei a carroça na frente dos cavalos... e que fiz na correria o exemplo em nem me atentei ao erro.

O problema esta no refresh do UPDATE, deve ser algo bem pequeno mesmo.

Olha a imagem com a correção do dbgotop(), continua da mesma maneira.


FUNCTION SOMA()
xVLR:=0
IF BRWITENS:nRecords > 0
ITENS->(OrdScope( TOPSCOPE , NIL ))
ITENS->(OrdScope( BOTTOMSCOPE, NIL ))

ITENS->(DBGOTOP())


ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
ITENS->(DBGOTOP())

DO WHILE !EOF()
xVLR += ITENS->QTD
ITENS->(DBSKIP())
ENDDO
BRWITENS:acolumns[04]:footing := TRANSF( xVLR, [@E 999,999] )

ENDIF
ITENS->(DBGOTOP())

BRWITENS:Refresh()
RETURN NIL
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes

Hwgui 2.22 build 2

Mensagempor Itamar M. Lins Jr. » 28 Dez 2018 14:45

Ola!

Resposta do bug no filtro.

I've rewrite his code to use my dbf files and to remove all function calls and all excess stuff - and it works correctly. Probably, the problem is somewhere in his code.

Regards, Alexander.


Procura aê, o BO.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Hwgui 2.22 build 2

Mensagempor gilbertosilverio » 28 Dez 2018 15:32

Ola Itamar,

Se ele, o mestre, não achou o erro, quem sou eu pra achar, um semi analfabeto... kkkkkk

Deixa quieto, vamos ficar na 2.17 mesmo...
gilbertosilverio
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 332
Data de registro: 18 Jan 2009 09:39
Cidade/Estado: Ribeirao Pires - SP
Curtiu: 1 vez
Mens.Curtidas: 23 vezes

Hwgui 2.22 build 2

Mensagempor Itamar M. Lins Jr. » 28 Dez 2018 17:15

Ola!
Eu tenho essas rotinas.

Tô sem tempo agora, depois eu passo. E funciona em qualquer versão.
Não pode ligar e desligar o ordscope nos filhos, deve ficar ligado o tempo todo.

..
   @ 5,080 Browse oBrw DataBase of oDlg Size 500,450 Font oFtBr Style WS_VSCROLL + WS_HSCROLL  ;
   ON POSCHANGE {||UpGetBrw(oBrwItens,oBrwMP)}
..
***********************************
FUNCTION UpGetBrw(oBrwItens,oBrwMP)
***********************************
*
*
mo->(ordSetFocus(1)) //ticket
mo->(OrdScope(0,cm->ticket))
mo->(OrdScope(1,cm->ticket))
mo->(dbGoTop())
oBrwItens:Refresh()

mp->(OrdScope(0,cm->ticket))
mp->(OrdScope(1,cm->ticket))
mp->(DbGoTop())
oBrwMP:Refresh()

RETURN .T.


Ai é só usar gotop, do while...
Não uso esse código abaixo:
FIRST {|| DBSEEK(mesas->mesa)} ;
WHILE {|| mesa == mesas->mesa}


Na NFE de entradas tem 4 ou cinco filhos da mesma forma.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Hwgui 2.22 build 2

Mensagempor gilbertosilverio » 30 Dez 2018 12:56

Ola Itamar,

Para funcionar somente desta maneira...

Como preciso atualizar as quantidades e totalizar no "FOOTING", só retirando FIRST E WHILE do browse FILTER.

Da maneira que estava, pelo que consegui ver, se você alterar a primeira lida do segundo Browse, ele fica certo, mais a partir da 2ª linha, ele considera que você esta na primeira linha e traz o ultimo item do arquivo junto ao filtro do item que você pesquisou.

Existe um erro no refresh do update do filter, mais quem sou eu para falar onde esta...

Desta maneira, que fiz, creio que por ele dar um refresh(), no 1º Browse, ele deve corrigir também o segundo, o único inconveniente, e que ele se reposiciona no 1º item do Browse, e tenho certeza que o meu pessoal vai chiar...

São por estas pequenas coisa, que o pessoal fica com a versão antiga, não existe compatibilidade entre elas, ai fica dificil migrar para a nova...

#include "hwgui.ch"
#include "ORD.ch"

FUNCTION Main()
  PRIVATE frmTesteBrowse

  INIT WINDOW frmTesteBrowse MAIN TITLE "Teste HBrowse com filtro" ;
       AT 0,0                 ;
       SIZE 820, 420          ;
       FONT HFont():Add("TAHOMA", 0, -14)

  CLOSE DATA

  USE MESAS NEW SHARED
  INDEX ON mesa TO indmesas
  SET INDEX TO indmesas

  USE ITENS NEW SHARED
  INDEX ON mesa TO inditens
  SET INDEX TO inditens

  DBSELECTAREA("MESAS")

  @ 010,061 BROWSE DATABASE brwMesas SIZE 353,283  STYLE WS_VSCROLL+WS_HSCROLL ;
            ON POSCHANGE {|| UpGetBrw( @brwMesas, @brwItens)}

  brwMesas:bColorSel := 16711680 //Cor da linha do browse

  ADD COLUMN FIELDBLOCK("mesa") TO brwMesas ;
    HEADER "Mesa   "        ;
    TYPE "C" LENGTH 6 DEC 0 ;
    JUSTIFY HEAD DT_LEFT    ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("garcon") TO brwMesas ;
    HEADER "Garcom" ;
    JUSTIFY HEAD DT_LEFT ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("total") TO brwMesas ;
    HEADER "Total" ;
    PICTURE "@E 999,999.99" ;
    JUSTIFY HEAD DT_RIGHT ;
    JUSTIFY LINE DT_RIGHT

  brwMesas:Refresh()

  DBSELECTAREA("ITENS")

  @ 375,061 BROWSE brwItens FILTER AUTOEDIT SIZE 415,283 STYLE WS_VSCROLL+WS_HSCROLL ;
            ON UPDATE {|| UpGetBrw( @brwMesas, @brwItens)}

  brwItens:bColorSel := 16711680

  ADD COLUMN FIELDBLOCK("mesa") TO brwItens ;
    HEADER "Mesa   ";
    TYPE "C" LENGTH 6 DEC 0 ;
    JUSTIFY HEAD DT_LEFT ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("nomeprod") TO brwItens ;
    HEADER "Produto" ;
    TYPE "C" ;
    LENGTH 40 ;
    DEC 0 ;
    JUSTIFY HEAD DT_LEFT ;
    JUSTIFY LINE DT_LEFT

  ADD COLUMN FIELDBLOCK("qtd") TO brwItens ;
    HEADER "Quantidade"   ;
    PICTURE "@R 999999"   ;
    EDITABLE              ;
    JUSTIFY HEAD DT_RIGHT ;
    JUSTIFY LINE DT_RIGHT

    brwItens:Refresh()

  ACTIVATE WINDOW frmTesteBrowse
RETURN NIL

* * * * * * * * *

FUNCTION UpGetBrw(oBrw1, oBrw2)
   fVLR01:=0
   ITENS->(OrdScope( TOPSCOPE   , NIL ))
   ITENS->(OrdScope( BOTTOMSCOPE, NIL ))
   ITENS->(DBGOTOP())
   ITENS->(OrdScope( TOPSCOPE   , MESAS->MESA ))
   ITENS->(OrdScope( BOTTOMSCOPE, MESAS->MESA ))
   ITENS->(DBGOTOP())
   DO WHILE !EOF()
      fVLR01 += ITENS->QTD
      ITENS->(DBSKIP())
   ENDDO
   oBrw2:acolumns[02]:footing    := [Qtde Total: ]
   oBrw2:acolumns[03]:footing    := TRANSF( fVLR01, [@E 999,999] )
   oBrw2:Refresh()
RETURN .T.

gilbertosilverio
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 332
Data de registro: 18 Jan 2009 09:39
Cidade/Estado: Ribeirao Pires - SP
Curtiu: 1 vez
Mens.Curtidas: 23 vezes

Anterior Próximo



Retornar para HwGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 2 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro