Saltar para conteúdo


Foto

Ajuda em aplicação "multi-forms"


  • Please log in to reply
Sem respostas a este tópico

#1 JonasGmrs

JonasGmrs

    Novato

  • Membro
  • Pip
  • 5 Entradas

Começado 20 janeiro 2012 - 12:23

Olá,

Precisava de uma pequena (grande :) ) ajuda num problema que aparentemente parece simples mas que me tem dado grandes dores de cabeça...

Estou a desenvolver uma aplicação para Windows Mobile 6.1 Professional com "multi-forms". A ideia é ter uma "Form 1" responsável por toda uma comunicação via bluetooth para aquisição de dados (esta tem de estar sempre em funcionamento, em background ou em modo visível), e 3 Forms, cada uma responsável por apresentar diferentes dados adquiridos, ex: Form 2: temperatura, Form 3: Humidade e Form 4: Pressão. Neste contexto, sempre que pressiono a tecla "seta direita" do telemóvel é possível navegar entre janelas, uma espécie de aplicação circular, na 1ª janela vejo o estado da comunicação, na 2ª a temperatura e assim sucessivamente. Até aqui tudo bem, algo simples, a questão é a forma como estou a implementar este código, a qual me está a dar problemas. 1º porque me aparecem as 4 janelas no gestor de tarefas e 2º porque quando executo por ex: a aplicação calculadora (em paralelo com a minha aplicação) e depois volto à minha app, acontece que ao fazer o processo normal de navegação janela a janela (seta para a direita) venho sempre parar ao ecrã principal do windows mobile, tendo de voltar a iniciar aplicação, isto repete-se até ter a "Form 1" no ecrã, aí já recomeça tudo dentro da normalidade...

Segue o código de cada uma das Forms para que possam entender melhor o que estou a fazer e de que forma.

: Form 1

public Form2 f2 = new Form2;  public Form3 f3 = new Form3;  public Form4 f4 = new Form4;...if ((e.KeyCode == System.Windows.Forms.Keys.Right) ){      // Right      f4.Show();      f3.Show();      f2.Show();}  ...

: Form 2, Form 3 e Form 4

if ((e.KeyCode == System.Windows.Forms.Keys.Right)){    // Right    Hide();         }

Se calhar vão achar que esta solução é um bocado à "pedreiro" lol até porque consome mais recursos a nível de memória, dado que tenho sempre todas as janelas em execução, mas a verdade é que não consegui a fluidez pretendida na passagem entre janelas de outra forma :(. Tentei usar o método close() e ter apenas 2 janelas em funcionamento de cada vez, mas acontece que quando faço a passagem, aparece sempre a "Form 1" e só depois a "FormX" desejada.

Alguém me pode dar umas dicas :)?

Muito obrigado.

Cumps




0 user(s) are reading this topic

0 membros, 0 convidados, 0 anônimos