Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-05-2003
Huer Huer is offline
Miembro
 
Registrado: may 2003
Posts: 21
Poder: 0
Huer Va por buen camino
Focus

Hola amigos de delphi, gracias a sus consejos he superado etapas.

mi dificultad es la siguiente:

tengo un servidor SQL 2000 y del terminal la conexión la realizo a través de ODBC. y funciona bien, pero la dificultad esta cuando voy a grabar me indica el siguiente error:

no puede enfocar ventanas lisiadas o invisibles.

cannot focus a disabled or invisible windows.


no puedo solucionar este error, o sera que las instrucciones han cambiado

Código Delphi [-]
begin
try
    if dm.md_publica.GotoKey then
       dm.md_publica.IndexFieldNames:='ppn';
       dm.md_publica.SetKey;
except
on e:econverterror do
       messagedlg(';!Propuesta ya ingresada!;',mtconfirmation,[mbok],0);
end;
    if (length(pp.text)=0) then;
    messagedlg(';!Campos en Blancos!;',mtconfirmation,[mbok],0);
begin
        dm.md_publica.Open;
        dm.md_publica.Insert;
        dm.md_publicaPPN.AsInteger:=strtoint(pp.Text);
        dm.md_publicaDETALLE.AsString:=dt.Text;
        dm.md_publicaFECHA.AsDateTime:=fetop2.Date;
        dm.md_publicaFECHAV.AsDateTime:=fetop3.Date;
        dm.md_publicaDOC.AsString:=doc.Text;
        dm.md_publicaCONCEPTO.AsString:=con.Text;
        dm.md_publicaAVISO.AsInteger:=strtoint(avi.Text);
        dm.md_publica.Post;
        dm.md_publica.Refresh;
end

Última edición por dec fecha: 04-05-2007 a las 18:59:35.
Responder Con Cita
  #2  
Antiguo 30-05-2003
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 26
delphi.com.ar Va por buen camino
Ese problema sucede cuando haces un SetFocus a un componente que esta deshabilitado o invisible, o que esta sobre una ventana / contenedor en ese estado.
Es un error muy común hacer un SetFocus en el create de un form, y como el form aún no se encuentra visible produce este error, una solución sencilla para esto es hacer lo siguiente:

Código:
procedure TForm1.FormCreate(Sender: TObject);
begin
  ActiveControl := Edit1;
end;
o hacerlo en el Load, o preguntar por CanFocus....

A simple vista el código que pasaste no produciría directamente ese error, aunque puede ser disparado desde algún evento en particular, como los eventos del dm.md_publica

PD:
Me gusta mas pensar que Disabled es desactivado / deshabilitado y no lisiado

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 04-05-2007
Avatar de Alejandrina
Alejandrina Alejandrina is offline
Miembro
 
Registrado: mar 2007
Ubicación: Medellin
Posts: 46
Poder: 0
Alejandrina Va por buen camino
Question Mismo problema

Hola,
Tengo el mismo problema donde tengo que.
Código:
procedure TFrmIngresoSolicitud.BTNuevaSolicitudClick(Sender: TObject);
begin
  DBLMolde.KeyValue := Null;
  DBLMaquinas.KeyValue := Null;
  DBEDescripcionMaquina.text:='';
  DBLArea.KeyValue := Null;
  DBeArea.text := '';
  Descripcion.text:='';
  DBEDescripcionMolde.text:='';
  DBLMaquinas.KeyValue := Null;
  Descripcion.text:='';
  DBLCIndicador.KeyValue:=Null;
  DBEdCodigoIndicador.Text:='';
  ingresars := true;
  DmSip.TblSolicitud.Insert;
  edsolicitud.SetFocus;
  DBLCIndicador.visible:=true;
  DBEdCodMolde.Visible:=false;
  BTNuevaSolicitud.Enabled:=false;
end;
luego lo deshabilito para que el usuario no repita la acción mientras esta rellenando los campos...intento solucionarlo de la forma anterior pero no me funciona...que mas puedo hacer?

Gracias...
__________________
Alejandrina
Responder Con Cita
  #4  
Antiguo 04-05-2007
Avatar de juanlaplata
juanlaplata juanlaplata is offline
Miembro
 
Registrado: ene 2007
Ubicación: La Plata, Bs. As. (Argentina)
Posts: 212
Poder: 18
juanlaplata Va por buen camino
Código:
edsolicitud.SetFocus;
verifica esta componente. Como dice delphi.com.ar
"hacer un SetFocus a un componente que esta deshabilitado o invisible"
da ese tipo de error.
Responder Con Cita
  #5  
Antiguo 04-05-2007
Avatar de karlaoax
karlaoax karlaoax is offline
Miembro
 
Registrado: oct 2003
Ubicación: Monterrey
Posts: 280
Poder: 21
karlaoax Va por buen camino
Estoy segura que debe haber un campo oculto por eso marca el error indicado........
Responder Con Cita
  #6  
Antiguo 04-05-2007
Avatar de Alejandrina
Alejandrina Alejandrina is offline
Miembro
 
Registrado: mar 2007
Ubicación: Medellin
Posts: 46
Poder: 0
Alejandrina Va por buen camino
Question nooooooooooooooo

Hola,
Gracias por sus sugerencias pero recibo mas ya que aun me sale el mismo error....
__________________
Alejandrina
Responder Con Cita
  #7  
Antiguo 05-05-2007
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 26
delphi.com.ar Va por buen camino
Cita:
Empezado por delphi.com.ar
...o preguntar por CanFocus....
Algo simplemente como eso:
Código Delphi [-]
if AControl.CanFocus then
  AControl.SetFocus;

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 14:40:02.


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