Ir para conteúdo

POWERED BY:

Arquivado

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

RoyalFlush

[Resolvido] Windows mobile, teclado sobre o form

Recommended Posts

Olá's

 

Como não achei nenhuma documentação sobre isso acabei postando aqui, vamos ver se alguem consegue me dar uma força

com essa duvida que já me incomoda a faz um tempinho ....

 

Estou fazendo uma aplicação para windows mobile (que deve rodar nas versões 6.0,6.1 e 6.5) até o momento td bem, o aplicativo roda

perfeitamente, contudo fiquei sabendo que sera usado um aparelho totalmente touch (isso ai, nada de teclado =\)

 

Foi ai que surgiu o problema, qdo o teclado virtual do windows mobile é aberto, ele fica sobre os meus forms, reparei que nos

menus e diretorio do windows mobile, qundo tu abres o teclado automaticamente o form "encolhe" criando uma barra de rolagem (se necessario)

 

Alguem por ai sabe como implementar isso, estou usando C#, visual studio 2008 e framework compact 3.5

 

Agradeço desde já!

[]'ss

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como você gerencia ele na tela?? você utiliza o Objeto InputPanel?

 

Ja utilizei o InputPanel com o Windows CE e Mobile 6, mas não customizei o InputPanel.

 

Att

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como você gerencia ele na tela?? você utiliza o Objeto InputPanel?

 

Ja utilizei o InputPanel com o Windows CE e Mobile 6, mas não customizei o InputPanel.

 

Att

 

Olá!

Não, não utilizei este objeto, na verdade não codifiquei nada referente ao teclado até o momento, apenas criei os form's inclui os controles, regras de negocio, etc

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo, usando o InputPanel você consegue controlar a visualização do mesmo e suas formas.

 

Atenciosamente

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, Sublyer, muito obrigado pelo apoio, vou fazer uns testes e posto aqui.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, posta sim

 

O fórum está precisando de conteúdo Mobile (rs).

 

Grande abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá's

Demorei mas voltei, problema do teclado resolvido com o código abaixo.

 

(...)
using Microsoft.WindowsCE.Forms;
(...)
InputPanel ip;

		private void SetKeyboardVisible(TextBox sender, bool incluirEspacoExtra)
		{
			ip.Enabled = true;

			if (incluirEspacoExtra)
			{
				Label lblPosicao = new Label();
				lblPosicao.Name = "lblPosicao";
				lblPosicao.Top = this.Height + ip.Bounds.Height;
				lblPosicao.Text = String.Empty;
				lblPosicao.Visible = true;
				this.Controls.Add(lblPosicao);
			}

			this.AutoScrollPosition = new Point(0, 0);
			this.AutoScrollPosition = new Point(0, sender.Top);
		}

		private void SetKeyboardInvisible()
		{
			ip.Enabled = false;
		}

		private void ip_EnabledChanged(object sender, System.EventArgs e)
		{
			if (!ip.Enabled)
			{
				Label lblPosicao = new Label();
				lblPosicao.Top = this.Height + ip.Bounds.Height;
				lblPosicao.Text = String.Empty;
				lblPosicao.Visible = true;

				foreach (object obj in this.Controls)
				{
					if (obj.GetType() == typeof(Label))
					{
						if (((Label)obj).Name == "lblPosicao")
						{
							((Label)obj).Dispose();
						}
					}
				}
			}
		}

e por fim a chamada dos metodos no evento GotFocus dos controles:

 

private void txtCaixaDeTexto_GotFocus(object sender, EventArgs e)
		{
			SetKeyboardVisible((TextBox)sender, false);
		}

		private void cboLista_GotFocus(object sender, EventArgs e)
		{
			SetKeyboardInvisible();
		}

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.