Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Desarrollo en Delphi para Android
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy


Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-12-2022
giantonti1801 giantonti1801 is offline
Miembro
 
Registrado: oct 2022
Posts: 143
Poder: 2
giantonti1801 Va por buen camino
teclado me ocupa la pantalla

hola amigo hoy con una nueva duda:

tengo una aplicacion de registro de usuario en android pero cuando sale el teclado en el telefono me ocupa unos campos donde voy a escribir no se como hacer para que el from se mueva y me deje ver lo que estoy escribiendo. estoy usando delphi 11
Responder Con Cita
  #2  
Antiguo 10-12-2022
PepCat PepCat is offline
Miembro
 
Registrado: mar 2017
Posts: 96
Poder: 8
PepCat Va por buen camino
Hola,

Pueds intentar utilizar el evento "OnVirtualKeyboardShown", que se activa cuando el teclado virtual se muestra en la pantalla. Puedes utilizar este evento para redimensionar o reposicionar tu formulario y asegurarte de que no queda oculto por el teclado.

Aqui tienes un ejemplo para Delphi 11: https://docwiki.embarcadero.com/Code...bleForm_Sample
Responder Con Cita
  #3  
Antiguo 10-12-2022
giantonti1801 giantonti1801 is offline
Miembro
 
Registrado: oct 2022
Posts: 143
Poder: 2
giantonti1801 Va por buen camino
Cita:
Empezado por PepCat Ver Mensaje
Hola,

Pueds intentar utilizar el evento "OnVirtualKeyboardShown", que se activa cuando el teclado virtual se muestra en la pantalla. Puedes utilizar este evento para redimensionar o reposicionar tu formulario y asegurarte de que no queda oculto por el teclado.

Aqui tienes un ejemplo para Delphi 11: https://docwiki.embarcadero.com/Code...bleForm_Sample
Gracias lo implemente pero me da un error de
Código Delphi [-]
[DCC Error] Registred.pas(114): Incompatible types: 'string' and 'TStrings'
creo que tiene que ver con esto
Código Delphi [-]
uses UnitLoginMv, System.Math;

Código Delphi [-]
procedure TForm1.CalcContentBoundsProc(Sender: TObject;
           var ContentBounds: TRectF);
begin
   if FNeedOffset and (FKBBounds.Top > 0) then
  begin
    ContentBounds.Bottom := Max(ContentBounds.Bottom,
                            2 * ClientHeight - FKBBounds.Top);
  end;
end;
Responder Con Cita
  #4  
Antiguo 13-12-2022
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
hola que tal existe una libreria llamada ControlMover que permite mover los controles por encima del teclado aqui esta el proyecto de ejemplo Mover controles por encima del teclado.rar
comprobado en delphi Xe7
Responder Con Cita
  #5  
Antiguo 13-04-2023
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Hola giantonti1801.
Si no has resuelto el problema, mira ésto a ver si te ayuda.
A mí me sirvió.
Saludos.
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)
Responder Con Cita
  #6  
Antiguo 13-04-2023
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Quizás este enlace también te pueda ayudar.
Un saludo.
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)
Responder Con Cita
  #7  
Antiguo 18-04-2023
ByNaR10 ByNaR10 is offline
Registrado
 
Registrado: may 2006
Posts: 1
Poder: 0
ByNaR10 Va por buen camino
En c++ builder Yo meto todos los controles dentro de un VertScrollBox y en los eventos onVirtualKeyboardShown y onVirtualKeyboardHidden del formulario ejecuto lo siguiente, puedes usar l IA para que te lo traslade a Delphi:

bool keyvisible;
TRectangle *rectkeyboard; //Este es un objeto visual invisible que lo pongo alineado al bottom para que siempre este en la parte baja de la pantalla

void __fastcall TFormGasto::FormVirtualKeyboardShown(TObject *Sender, bool KeyboardVisible,
const TRect &Bounds)
{
TRectF LFocusRect;
FKBBounds = TRectF(Bounds);
rectkeyboard->Height = FKBBounds.Height() - rtgfooter->Height;
rectkeyboard->Visible = true;
keyvisible = true;

try{
if (ActiveControl) {
LFocusRect = ActiveControl->AbsoluteRect;

LFocusRect.Offset(VertScrollBox1->ViewportPosition.X, VertScrollBox1->ViewportPosition.Y);
VertScrollBox1->ViewportPosition = PointF(VertScrollBox1->ViewportPosition.X, LFocusRect.top - VertScrollBox1->Height);
}
}__finally{
}
}
//---------------------------------------------------------------------------

void __fastcall TFormGasto::FormVirtualKeyboardHidden(TObject *Sender, bool KeyboardVisible,
const TRect &Bounds)
{
rectkeyboard->Visible = false;
keyvisible = false;
}
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tablet Teclado en pantalla y Delphi elguille Varios 0 28-10-2020 08:42:06
Teclado en pantalla glopez API de Windows 8 10-05-2012 09:47:02
Teclado en Pantalla tec Varios 8 08-02-2010 10:00:51
Teclado en pantalla Alex1 API de Windows 4 09-11-2007 10:54:44
Componente teclado en pantalla jamonete2 OOP 3 10-06-2005 18:17:09


La franja horaria es GMT +2. Ahora son las 16:04:57.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi