Ir para o conteúdo

 Voltar a SGA LIVRE De...
Tela cheia

Colaboração - Implementação de um modo alternativo para visualização do painel em tela cheia - Windows Vista

21 de Dezembro de 2009, 10:20 , por Desconhecido - | 1 Pessoa seguindo este artigo.
Visualizado 74 vezes

PROBLEMA IDENTIFICADO

Constatado que no Windows Vista, quando se utiliza dois monitores a aplicação do painel minimiza sozinha quando a janela desta perde o foco.

 

SOLUÇÃO ADOTADA

Adicionado um código alternativo para visualização do painel em tela cheia, utilizando JFrame e JDialog.

 

CÓDIGO ADICIONADO

Incluida na linha 199 da classe Web.java o seguinte código.

}else if (System.getProperty("args").contains("-vista")){

JFrame tela = new JFrame(device.getDefaultConfiguration());

JDialog dialogo = new JDialog(tela);

dialogo.setUndecorated(true);

}

 

EXECUÇÃO

Será necessário passar o parâmetro "-vista" para a execução do jar.

ex.: java -jar painel.jar -vista 

Utilizado a execução por parâmetro, para que a solução possa ser testada em outros SO, caso o mesmo problema seja identificado.

Autor: Cleber Vieira


88 comentários

  • 88771f3fc7709d1e341bc69d6ab1415c?only path=false&size=50&d=404Claudiomar Dourado(usuário não autenticado)
    29 de Abril de 2010, 17:37

     

    Olá Gostaria de acrescentar que esse erro ocorre em outros SO, utilizo uma máquina com XP onde utilizo dois monitores um secundário para exibir o painel e outro primário para o usuário trabalhar, porém quando o usuário clica em qualquer parte da tela que não seja o aplicativo do painel ele minimiza automaticamente.

    Estava verificando uma solução para esse erro e o jdialog é uma ótima opção para correção.

    Se puderem fazer essa alteração ou nos enviar o código fonte do painel.jar para podermos fazer essa alteração.

    Grato.

     

  • 88771f3fc7709d1e341bc69d6ab1415c?only path=false&size=50&d=404Claudiomar Dourado(usuário não autenticado)
    30 de Abril de 2010, 17:31

     

    Hoje estava dando uam olhada no código e percebi que já é utilizado o jdialog e que poderiamos fazer a seguinte alteração para testar.

     Alterar o metodo antigo por este em vermelho na arquivo userinterface>loader.java. eu fiz isso porém não consigo gerar o .jar para testar.

    quando coloquei o código no netbeans dá alguns erros no painel.java aí num compila.

     public Loader()
        {
            this.setSize(400, 60);
            this.setTitle("Painel");
            this.setLocationRelativeTo(null);
            this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
            
            this.add(_progressBar);
        }

  • 827fb13590b5b09af65f7ed3b916f8dd?only path=false&size=50&d=404Rafael Margado Salvioni(usuário não autenticado)
    23 de Setembro de 2010, 13:09

     

    Pessoal

    Alterei o código fonte do painel com as 2 soluções, 1 de cada vez. Compilei o .jar e não deu certo.

    Porém, consegui resolver esse problema utilizando o modo "developer" o painel, ou seja, executei o painel com o comando:

    java -jar painel -developer

    Esse comando faz com que o painel abra em uma janela, e não em modo full screen. Então, basta maximizar a janela e coloca-la no outro monitor (considerando que o 2º monitor é extensão do 1º)

    • 827fb13590b5b09af65f7ed3b916f8dd?only path=false&size=50&d=404Rafael Margado Salvioni(usuário não autenticado)
      23 de Setembro de 2010, 13:11

       

      Correção:

      O comando utilizado foi:

      java -jar painel.jar -developer

      • 8bc43a506df9ce636e4f404d3662d146?only path=false&size=50&d=404Diego Sampaio(usuário não autenticado)
        3 de Dezembro de 2010, 15:58

         

        resolvi essa questao usando um metodo parecido com o do amigo acima, mas sem necessidade de passar parametro de execuçao.

        1 - no web.java, comente todo o if que vai da linha 194 a 210 (aproximado, ja que ja mexi no arquivo).

        2 - abaixo da estrutura if que vc acabou de cometar adicione "this.janela();//metodo inserido para chamar a classe que faz rodar em janela" sem as aspas.

        3 - comente o conteudo das linhas 323 ate 342 (aproximadamente) que compreendem as classes criafullscreen e emulafullscreen.

        4 - e insira o seguinte abaixo do comentario

        private void janela()//Classe inserida para rodar em janela   
            {
                this.caixa = new JFrame();
                }

        apos isso, o painel passara aser executado em uma janela sem necessidade de passar nenhum parametro de execuçao e tocando normalmente o som de chamada (coisas que nao acontecem com o uso do -developer)

        • 4f5dde6bfc023c47c450d2af94bcde6b?only path=false&size=50&d=404Lincoln Lamas(usuário não autenticado)
          24 de Abril de 2012, 10:16

           

          Estávamos com este problema aqui e conseguimos resolver com a sua solução.

          Parabéns e obrigado. 

        • 226609156afb0948e6aa2050583f290e?only path=false&size=50&d=404Pollyanderson Malaquias(usuário não autenticado)
          28 de Abril de 2013, 7:43

           

          Diego,

          você poderia disponibilizar na pasta "Contribuições" o arquivo original painel.jar só que com somente essas alterações feitas?

          Outra coisa interessante e já vi no fórum que muita gente não sabe (Inclusive eu!) seria o seguinte: adicionar a função de, ao clicar com botão direito no painel, listar opções de "Maximinizar tela", "Exibir em tela cheia" e "Minimizar tela".

           Notei que você tem um certo domínio sobre programação java, então vejo a oportunidade de uma contribuição enorme pra comunidade!

          A minha necessidade atual é a seguinte: eu gostaria de usar um só computador compartilhando dois monitores: um principal para triagem e um secundário para exibição do painel. Só que eu ainda não descobri como arrastar o painel para o segundo monitor por conta do painel somente ser exibido em tela cheia, não aparecendo a barra de título para ser clicada e arrastada.

           Obrigado! 

Encontro da comunidade SGA Livre no FISL11

13 de Julho de 2010, 15:41, por Desconhecido

Prezados,



Em uma semana, SGA Livre ultrapassa mil usuários

10 de Novembro de 2009, 19:19, por Desconhecido

Em apenas uma semana de funcionamento, a comunidade do Sistema de Gerenciamento do Atendimento (SGA Livre) do Portal Software Público atingiu a marca de mil usuários. O lançamento e a disponibilização do software livre foi feito no último dia 22, durante a 6ª Conferência Latino-Americana de Software Livre (Latinoware 2009), que ocorreu em Foz do Iguaçu (PR).



Nova versão da aplicação Web 1.0.2

4 de Novembro de 2009, 17:05, por Desconhecido

Disponível nova versão da aplicação web (1.0.2). Corrige uma falha na impressão da senha, no módulo de Triagem.



Nova versão da aplicação Web 1.0.1

29 de Outubro de 2009, 12:56, por Desconhecido

Disponível nova versão da aplicação Web do SGA LIVRE, que corrige: