Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-05-2015
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
programa activo en windows

Hola Sres. Como están ustedes...

Tengo una interrogante el cual necesito que la aplicación desarrollada en delphi esté siempre en primer plano ya que en ocasiones se pone en segundo plano y la aplicación se encarga de leer codigos de barra sin intervención de ningún usuario y al estar en segundo plano el lector realiza la lectura pero el programa no captura en el edit la lectura. eso es posible usando la api de windows?


Saludos

novato_erick
Responder Con Cita
  #2  
Antiguo 18-05-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola novato_erick.

Ajusta la propiedad FormStyle del form principal en fsStayOnTop en tiempo de diseño, o si prefieres en ejecución:
Código Delphi [-]
procedure TMainForm.FormCreate(Sender: TObject);
begin
  FormStyle := fsStayOnTop; 
  ...
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 18-05-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola de nuevo.

Ahora noto que lo publicaste en el foro API de windows, así que si gustas hacerlo por esa vía:
Código Delphi [-]
procedure FormAlTop(aForm: TForm; const alTop: Boolean);
begin
  if alTop then
    SetWindowPos(aForm.Handle,
                 HWND_TOPMOST,
                 0,
                 0,
                 0,
                 0,
                 SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE)
  else
    SetWindowPos(aForm.Handle,
                 HWND_NOTOPMOST,
                 0,
                 0,
                 0,
                 0,
                 SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;

Llamada ejemplo:
Código Delphi [-]
procedure TMainForm.CheckBox1Click(Sender: TObject);
begin
  FormAlTop(MainForm, CheckBox1.Checked);
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 18-05-2015
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Jaaja ecfisa
esto es todo?

Cita:
Ajusta la propiedad FormStyle del form principal en fsStayOnTop en tiempo de diseño, o si prefieres en ejecución:

procedure TMainForm.FormCreate(Sender: TObject);
begin
FormStyle := fsStayOnTop;
...
end;
yo buscando por todo lado función como esta Función GetActiveWindow.

Saludos
Responder Con Cita
  #5  
Antiguo 18-05-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por novato_erick Ver Mensaje
Jaaja ecfisa
esto es todo?
...
Un ejemplo de la belleza de la simplicidad...

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 18-05-2015
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Hola Chicos complementando un poco a mi tema en el que creo que el problema a parte de ejecución a primer plano de la aplicación a parte estaba el problema luego del Focus del componente que en este caso es un edit

esta es el codigo implementado en una funcion llamada ActiveFocus;

Código Delphi [-]
function TfrmAsistencia.ActiveFocus: Boolean;
var
  Handle: THandle;
  Len: LongInt;
  Title: string;
begin
  Result := False;
  Handle := GetForegroundWindow;
  if Handle <> 0 then
  begin
    Result := True;
    if Result then
    begin
      edtCedula.SetFocus;
    end;
  end;


con un Timer en el evento OnTimer del mismo llamo simplemente la funcion y resolví el problema del focus en la aplicación esto aunque dentro del formulario mi edit el Tab Order es el primero no me hacia el foco al pasar nuevamente a primer plano.

Saludos

novato_erick

p.d:

Cita:
ecfisa
Un ejemplo de la belleza de la simplicidad...
espero sea este código se convierta en algo más simple...
Responder Con Cita
  #7  
Antiguo 18-05-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola novato_erick.

Realmente no alcanzo a visualizar la situación ni el problema, ¿ Podrías explicar con mas detalle el comportamiento que estas buscando ?

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 18-05-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Este tema me resulta interesante ya que dentro de poco voy a tener que andar usando un lector de huellas digitales en una aplicacion que por ahora esta en papel y lapiz

La aplicacion en teoria registra asistencia de una persona al leer la huella digital de la misma, seria muy interesante que aunque no sea la ventana activa siga realizando el proceso

Lamentablemente no tengo codigo para compartir, pero supongo que consistira en un control edit en el cual capturo la lectura de la huella digital, y en el evento OnChange invocar algun metodo que busque a la persona con la huella digital y se encargue de marcar el presente

La solucion de la propiedad fsStayOnTop es la ultima alternativa a la que me gustaria recurrir, ya que la pc en cuestion podria estar usandose para otra cosa (como expuse en otro tema mi aplicacion registra presentes de socios en un gimnasio), por ejemplo la usan para pasar musica


Cordiales saludos
Responder Con Cita
  #9  
Antiguo 19-05-2015
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por AgustinOrtu Ver Mensaje
Este tema me resulta interesante ya que dentro de poco voy a tener que andar usando un lector de huellas digitales en una aplicacion que por ahora esta en papel y lapiz
Con los que yo he trabajado no funcionan como los lectores de códigos, que suelen "emular" la introducción de un teclado (ya que también se podría hacer tecleando al código manualmente -cuando la etiqueta, por ejemplo, está rota y no se puede leer con el lector-).

En el caso de un lector de huella no tiene sentido introducirla tecleando, y se los que yo he visto funcionan con DLL/OCX que se distribuyen con el dispositivo y se comunican con él.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
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
Programa al iniciar windows trex2000 Varios 3 05-09-2014 01:27:29
Extraer informacion del Directorio Activo de Windows Server 2003 dtomeysoto Varios 0 03-08-2011 16:02:10
Programa SERVICIO WINDOWS marceloalegre Varios 6 13-02-2008 08:52:51
programa para ver en que direccion del registro de windows escribe un programa? JuanErasmo Varios 1 09-11-2006 20:42:05
programa windows en Linux gasal Linux 0 05-07-2004 14:24:19


La franja horaria es GMT +2. Ahora son las 15:15:45.


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