mensagens subindo e descendo

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

mensagens subindo e descendo

Mensagem por asimoes »

Deu trabalho pra fazer este exemplo
eu peguei o exemplo da minigui, não consegui compilar com mingw somente com msvc.
a biblioteca é hwgui.

Segue os fontes do exemplo.
Anexos
TaskBar.zip
Fontes taskbar
(554.1 KiB) Baixado 118 vezes
►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)
Abel
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 14 Mar 2012 13:16
Localização: sao paulo / sp

mensagens subindo e descendo

Mensagem por Abel »

realmente, nao deu, ele baixa mas da arquivo corrimpido quando vou abrir.

Abel
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

mensagens subindo e descendo

Mensagem por asimoes »

Abel,

Fiz upload do arquivo para a seção de download, tem que aguardar o toledo aprovar o envio.
►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 do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

mensagens subindo e descendo

Mensagem por Toledo »

Abel escreveu:realmente, nao deu, ele baixa mas da arquivo corrimpido quando vou abrir.
Abel, tente baixar novamente o arquivo, fiz um teste e agora está funcionando, sem erros.
asimoes escreveu:Fiz upload do arquivo para a seção de download, tem que aguardar o toledo aprovar o envio.
Alexandre, o arquivo em anexo neste tópico agora já está baixando corretamente.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Abel
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 14 Mar 2012 13:16
Localização: sao paulo / sp

mensagens subindo e descendo

Mensagem por Abel »

asimoes, consegui baixar, era isso mesmo que eu queria, este efeito mesmo. Pelo que percebi o quadro que movimenta é um BMP, entao eu teria que criar os BMP´s e exibir quando desejado, é isso ?

nem sei se vou conseguir compilar estas rotinas com meu sistema, minha programacao é modo console ainda e utilizo o harbour.

Abel
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

mensagens subindo e descendo

Mensagem por asimoes »

Abel,

Isso mesmo um bmp.

Este exemplo foi compilado com o harbour + hwgui + msvc

Quanto a hwgui é opcional.
►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 do usuário
Nascimento
Usuário Nível 4
Usuário Nível 4
Mensagens: 763
Registrado em: 19 Jul 2008 12:11
Localização: OLINDA-PE

mensagens subindo e descendo

Mensagem por Nascimento »

amigo assimoes no caso este exemplo funcionaria em modo console so com harbour+gtwvt?
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

mensagens subindo e descendo

Mensagem por asimoes »

Josivan,
Não testei, mas deve funcionar sim.
►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 do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

mensagens subindo e descendo

Mensagem por JoséQuintas »

Basicamente é usar savescreen/restorescreen.
Tá querendo fazer estilo o messenger.

Seria assim:

- salva a tela

e em um loop:
- desenha sua janela começando na linha inferior
- vai reduzindo a linha, restaurando a tela e repetindo o loop

Tentando postar diretamente aqui sem teste, algo mais ou menos assim:

Código: Selecionar todos

SAVE SCREEN TO wTela
nRow := 24
DO WHILE nRow > 5
    DesenhaAviso( nRow )
    nRow -= 1 // ou nRow := nRow - 1
    Inkey(0.1)
    RESTORE SCREEN FROM wTela
ENDDO
RETURN

FUNCTION DesenhaAviso( nRow )
   @ nRow, 40 CLEAR TO nRow + 5, 79
   @ nRow, 40 TO nRow + 5, 79
   @ nRow + 2, 45 SAY "AVISO"
   @ nRow + 3, 45 SAY "Tem este aviso"
   RETURN NIL
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Nascimento
Usuário Nível 4
Usuário Nível 4
Mensagens: 763
Registrado em: 19 Jul 2008 12:11
Localização: OLINDA-PE

mensagens subindo e descendo

Mensagem por Nascimento »

Usando o Exemplo do Amigo josequincas
Adicionei Para descer Nao testei pois usei a logica que ele usou
so fazendo o efeito contrario

Código: Selecionar todos

SAVE SCREEN TO wTela
nRow := 24
DO WHILE nRow >=5
    DesenhaAviso( nRow )
    nRow -= 1 // ou nRow := nRow - 1
	 Inkey(0.1)
if nrow>=5    
 RESTORE SCREEN FROM wTela
endif
ENDDO
*RETURN
inkey(2)
@ nRow, 40 CLEAR TO nRow + 5, 79
nRow :=5
DO WHILE nRow<24
    DesenhaAviso( nRow )
     nRow+=1  // ou nRow := nRow + 1
	 Inkey(0.1)
       
 RESTORE SCREEN FROM wTela
ENDDO
RETURN
FUNCTION DesenhaAviso( nRow )
   @ nRow, 40 CLEAR TO nRow + 5, 79
   @ nRow, 40 TO nRow + 5, 79
   @ nRow + 2, 45 SAY "AVISO"
   @ nRow + 3, 45 SAY "Tem este aviso"
RETURN NIL
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

mensagens subindo e descendo

Mensagem por JoséQuintas »

Testei. O clear entre as rotinas não precisa, já que ela sempre faz o restore screen.
Ajustado, já pra qualquer tamanho de tela, ficou assim:

Código: Selecionar todos

PROCEDURE Main
   SAVE SCREEN TO wTela
   nRow := MaxRow()
   DO WHILE nRow >= 5
      DesenhaAviso( nRow )
      nRow -= 1 // ou nRow := nRow - 1
      Inkey( iif( nRow < 5, 2, 0.1 ) )
      RESTORE SCREEN FROM wTela
   ENDDO
   nRow := 5
   DO WHILE nRow < MaxRow()
      DesenhaAviso( nRow )
      nRow += 1 // ou nRow := nRow + 1
      Inkey(0.1)
      RESTORE SCREEN FROM wTela
   ENDDO
   RETURN

FUNCTION DesenhaAviso( nRow )
   Scroll( nRow, 40, nRow + 5, 79, 0 )
   @ nRow, 40 TO nRow + 5, 79
   @ nRow + 2, 45 SAY "AVISO"
   @ nRow + 3, 45 SAY "Tem este aviso"
   RETURN NIL
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

mensagens subindo e descendo

Mensagem por JoséQuintas »

Esqueci de dizer:
Baixei o exemplo que tem EXE, e o visual é muito bonito.
Mas no final dá GPF, então não dá pra usar.
Não testei nada de compilar aqui, apenas usei o EXE que estava junto.
Windows 7 Ultimate 64 bits.
Anexos
erroforum.png
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

mensagens subindo e descendo

Mensagem por asimoes »

Tem incluir a função ExitProcess() antes de sair.
►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)
Abel
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 14 Mar 2012 13:16
Localização: sao paulo / sp

mensagens subindo e descendo

Mensagem por Abel »

Ola Jose M.C.Quintas,
a minha ideia inicial era fazer o aviso surgir da tela e ir "entrando na mesma". se entendi bem seu exemplo exibe a mensagem em uma area da tela e depois vai movendo o "quadro", é isso ?

Abracos,
ABEL
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

mensagens subindo e descendo

Mensagem por JoséQuintas »

Não começa com o quadro inteiro, mas com uma única linha.
Vai subindo, aguarda, e depois vai descendo até sumir.
Por ser console, depende da tela estar aberta, igual seria no clipper.
Mas é só compilar e vai ver funcionando.
Talvez seja bom acrescentar SetMode(25,80), porque se sua janela tiver 300 linhas vai ficar esquisito.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder