• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Arquivado

Este tópico foi arquivado, e está fechado a novas respostas.

unsignedint

[Closed Source] Comix - Comic Strip Viewer v0.3.8

11 mensagens neste tópico

Este foi o meu primeiro programa criado usando o Visual Studio C# Express, e a respectiva linguagem.

Basicamente trata-se de um programa que permite visualizar "comic strips" (as tiras de bd que aparecem nos jornais),

tais como Calvin and Hobbles, Baldo, entre outros.

Por enquanto o programa está muito verde, mas já permite ter uma ideia daquilo que eu desejava criar.

comix-main.png

PS: Pode-se usar as setas do teclado para alternar entre os dias, e visualizar assim automaticamente as strips.

O programa a medida de exibe as imagens tiradas da net, faz cache das mesmas na sua directoria de instalação,

fazendo com que a visualização das strips antigas seja bem mais rápida.

Se tiverem ideias ou comentarios agradecia (Sei que é um pouco infantil e básico o programa, mas tinha q começar por algum lado)

Pagina onde está alojado o programa: http://tinyurl.com/owetw

Ultima versão: 0.3.8    (18 de Agosto de 2006) [nota: versão de debug, não lida com excepções]

Comic Strips Suportadas: 9 to 5, Adam@Home, B.C, Bad Reporter, Baldo, Calvin and Hubbles, Cathy, Compu-toon, Garfield, Kudzu


Revisão v0.3.8

[ + ] - (GUI  )  Adicionada uma ProgressBar que exibe o progresso do download das strips (informativo)

[ + ] - (GUI  )  O download das Strips é agora efectuda por uma Thread, o que faz com que o GUI deixe de "pendurar".

[ + ] - (GUI  ) Capacidade de efectuar Zoom In/Out/Scale(Off)

[ + ] - (CORE)  Foi criada uma função que calcula o racio das imagens simulando o comportamento do Windows Picture and Fax Viewer (Muito Muito Fixe :P)

[ + ] - (CORE) A forma como se lida com a escrita dos ficheiros no disco foi melhorada, já nao deve pendurar com + de 50 strips na cache.

[ -  ] - Alguns bugs menores foram removidos, e intruduzidos outros.... :D

[ + ] - (GUI  ) A foi criada uma class para lidar com os eventos do teclado, esta é a layout por agora:

        [+]  Tecla: +          = Zoom In

        [+]  Tecla: -          = Zoom Out

        [+]  Tecla: ENTER  = Zoom Off, Normal Scalling

        [+]  Tecla: F          = Fullscreen ON/OFF (Maximizar ou Restore)

        [+]  Tecla: [ --> ]  = Avança com a strip um dia ( Seta da Direita )

        [+]  Tecla: [ <-- ]  = Retrocede com a strip um dia ( Seta da Esquerda )

Digam o que acham desta versão.

Nota: Para poder compreender melhor onde é que devem ser capturadas as excepções e para depois decidir como lidar com as mesmas, esta versão não lida com quase nenhuma excepção, por isso caso gerem uma copiem o texto que aparece no JIT e envie-me para o email. Ficaria agradecido, email: unsignedint (at) gmail (dot) com ou envie-me um PM pelo site.

Fiquem bem, desde já obrigado pelo vosso suporte.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ele a mim, nao saca nada da net...

Estranho, saquei agora mesmo a versão que disponibilizei e corri e funcionou tudo bem.

Não poderá ser o que tua firewall tenha bloqueado a aplicação, ou não tenhas o .Net Framework 2.0?

Já agora não apresenta nenhum erro? Mais feedback em relação ao erro seria util ( caso exista :P )

Se desejares posso enviar-te uma versão de debug.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estive a testar e esta muito fixe  :D . Só reparei numa coisa. Tipo... quando esta a fazer o download da imagem, o programa fica como se tivesse bloqueado. Podias fazer aparecer uma barra de progresso  :D

Bom trabalho :P

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estive a testar e esta muito fixe  :D . Só reparei numa coisa. Tipo... quando esta a fazer o download da imagem, o programa fica como se tivesse bloqueado. Podias fazer aparecer uma barra de progresso  :D

Bom trabalho :D

Cumps

Sim eu bem sei, tentei usar threads para resolver o problema, mas as threads do windows não são nada iguais ao java :P, ainda tentei usar uma novidade que foi introduzida com o .NET 2.0 que era o backgroundworker mas mesmo assim não consegui resolver o problema, quem sabe numa proxima versão.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ele a mim, nao saca nada da net...

Estranho, saquei agora mesmo a versão que disponibilizei e corri e funcionou tudo bem.

Não poderá ser o que tua firewall tenha bloqueado a aplicação, ou não tenhas o .Net Framework 2.0?

Já agora não apresenta nenhum erro? Mais feedback em relação ao erro seria util ( caso exista :P )

Se desejares posso enviar-te uma versão de debug.

tenho o .NET framework 2.0, a firewall nem acusa que o programa ker ligar a net, e nao da nenhum erro, simplesmente nao aparece nd

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Excelente ideia! estive a ler o Garfield praí nos ultimos 50 minutos!! :D

É pena que demore tanto a abrir... Não é que seja uma eternidade, mas são uns 5 segundos à espera sem ver nada a mexer. O consumo de memória também é grande... Quase 30MB (memória física + virtual) para uma aplicação simples é exagero. Claro que estes dois pontos são provavelmente causados pelo uso do .NET 2.0.

Agora coisas que é possível resolver (eventualmente)

Ao fim de algum tempo a ver as strips, entre 60 a 90 strips, equivalente a 2 ou 3 meses, o programa bloqueia e fica a utilizar 100% do CPU, tendo que recorrer ao Task Manager para terminar a aplicação. O consumo de memória neste caso não aumenta nem diminui.

Outro problema é quando as strips são demasiado grandes e não cabem no ecrã, é impossível ver a imagem completa. Isso aconteceu-me no Garfield, mas não me lembro em que data. Falha minha ;P

Finalmente, acho que os botões para mudar de data deviam carregar automaticamente o strip quando pressionados, ao invés de ter que carregar no botão e em seguida carregar no botão de carregar. (que confusão :P)

Fora isso, está excelente!!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Excelente ideia! estive a ler o Garfield praí nos ultimos 50 minutos!! :D

É pena que demore tanto a abrir... Não é que seja uma eternidade, mas são uns 5 segundos à espera sem ver nada a mexer. O consumo de memória também é grande... Quase 30MB (memória física + virtual) para uma aplicação simples é exagero. Claro que estes dois pontos são provavelmente causados pelo uso do .NET 2.0.

Sem duvida que o consumo exagerado de recursos é provovado pelo .Net mas e acredito por algumas tecnicas minhas menos bem empregues, mas isso vai ser um ponto que vou pesquisar um pouco mais, ou mudo para C++ ( lá antiga, sem .NET)  pois para ser sincero mais de 4MB de memoria para mim já seria um exagero :D [ps: eu nunca disse isso.]

Ao fim de algum tempo a ver as strips, entre 60 a 90 strips, equivalente a 2 ou 3 meses, o programa bloqueia e fica a utilizar 100% do CPU, tendo que recorrer ao Task Manager para terminar a aplicação. O consumo de memória neste caso não aumenta nem diminui.

Não fazia a minima ideia, vou terntar reproduzir o que me fizes-te para ver se dou com o erro, thx.

Outro problema é quando as strips são demasiado grandes e não cabem no ecrã, é impossível ver a imagem completa. Isso aconteceu-me no Garfield, mas não me lembro em que data. Falha minha ;P

Este pormenor resolve-se facilmente, como tenho um monitor de 19" nunca me tinha apercebido.

Finalmente, acho que os botões para mudar de data deviam carregar automaticamente o strip quando pressionados, ao invés de ter que carregar no botão e em seguida carregar no botão de carregar. (que confusão :P)

Se usares as setas resolves o problema, automaticamente a strip avança ou retrocede conforme o sentido da seta.

Obrigado pelo feedback.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Após alguma consideração aos comentarios feitos aqui no forum, aqui fica a nova versão 0.3.8 com as seguintes caracteristicas:

Revisão v0.3.8

[ + ] - (GUI  )  Adicionada uma ProgressBar que exibe o progresso do download das strips (informativo)

[ + ] - (GUI  )  O download das Strips é agora efectuda por uma Thread, o que faz com que o GUI deixe de "pendurar".

[ + ] - (GUI  ) Capacidade de efectuar Zoom In/Out/Scale(Off)

[ + ] - (CORE)  Foi criada uma função que calcula o racio das imagens simulando o comportamento do Windows Picture and Fax Viewer (Muito Muito Fixe :D)

[ + ] - (CORE) A forma como se lida com a escrita dos ficheiros no disco foi melhorada, já nao deve pendurar com + de 50 strips na cache.

[ -  ] - Alguns bugs menores foram removidos, e intruduzidos outros.... :P

[ + ] - (GUI  ) A foi criada uma class para lidar com os eventos do teclado, esta é a layout por agora:

        [+]  Tecla: +          = Zoom In

        [+]  Tecla: -          = Zoom Out

        [+]  Tecla: ENTER  = Zoom Off, Normal Scalling

        [+]  Tecla: F          = Fullscreen ON/OFF (Maximizar ou Restore)

        [+]  Tecla: [ --> ]  = Avança com a strip um dia ( Seta da Direita )

        [+]  Tecla: [ <-- ]  = Retrocede com a strip um dia ( Seta da Esquerda )

Digam o que acham desta versão.

Nota: Para poder compreender melhor onde é que devem ser capturadas as excepções e para depois decidir como lidar com as mesmas, esta versão não lida com quase nenhuma excepção, por isso caso gerem uma copiem o texto que aparece no JIT e envie-me para o email. Ficaria agradecido, email: unsignedint (at) gmail (dot) com ou envie-me um PM pelo site.

Fiquem bem, desde já obrigado pelo vosso suporte.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites