Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-08-2007
meme meme is offline
Miembro
 
Registrado: jun 2007
Posts: 30
Poder: 0
meme Va por buen camino
Red face duda con el manejo de eventos

Estoy haciendo una aplicacion con distintos componentes (buttom, listbox...) y no se si es posible hacer para que, dentro del codigo asociado a un evento (por ejemplo el asociado al click en un buttom), se pueda chequear si se han producido otros eventos en los otros componentes de la aplicacion. No se si podría hacer de alguna manera para que la aplicacion quedara "parada" en espera de los eventos del resto de componentes.
Responder Con Cita
  #2  
Antiguo 21-08-2007
Avatar de AntonioG
AntonioG AntonioG is offline
Miembro
 
Registrado: jun 2007
Posts: 17
Poder: 0
AntonioG Va por buen camino
Hola,

De hecho la aplicacion queda parada hasta haber realizado los eventos de cada boton, listibox o cualquier cosa que se haya apretado (a menos que uses hilos).

Podria sponer un ejemplo de que es lo que quieres hacer y que es lo que esta haciendo el programa para entender emjro cual es el problema?

Bueno, releyendo, como que entendi que quisieras que por ejemplo no puedas apretar un boton hasta despues de haber elejido una opcion de un listbox, por ejemplo. Bueno, en ese caso entonces pon el boton como descativa, digamso si es el boton Button1, pues debes hacer
Button1->Enabled=false. Cone sto queda visible pero no lo puedes apretar.
Ahora, en algun evento del listbox (por ejemplo cuanbdo se le da clcik) pues pones Button1->Enabled=true;, con eso lo activas.

Saludos
Responder Con Cita
  #3  
Antiguo 22-08-2007
meme meme is offline
Miembro
 
Registrado: jun 2007
Posts: 30
Poder: 0
meme Va por buen camino
Hola, antes de nada gracias por contestar.

La cuestión no es exactamente asi, mi aplicación usa winsock para transferencia de archivos, la cosa es que uso un buttom para establecer la conexion y un list box que muestra los ficheros del pc. El problema surge porque se establece la conexion dandole al buttom, se ejecuta el codigo asociado a ese evento (buttom) pero yo necesitaria que se detuviera ahi y gestionara posibles eventos del Listbox, para enviar archivos con la conexion establecida. No se si hay alguna forma de hacerlo o alguna otra manera...

Saludos
Responder Con Cita
  #4  
Antiguo 24-08-2007
Avatar de AntonioG
AntonioG AntonioG is offline
Miembro
 
Registrado: jun 2007
Posts: 17
Poder: 0
AntonioG Va por buen camino
Hola,

Mmm, ahi no se bien :S, a ver si alguien el en foro que vea este tema sabe.

Saludos
Responder Con Cita
  #5  
Antiguo 27-08-2007
ALAM ALAM is offline
Registrado
 
Registrado: abr 2007
Posts: 7
Poder: 0
ALAM Va por buen camino
Cita:
Empezado por meme Ver Mensaje
El problema surge porque se establece la conexion dandole al buttom, se ejecuta el codigo asociado a ese evento (buttom) pero yo necesitaria que se detuviera ahi y gestionara posibles eventos del Listbox, para enviar archivos con la conexion establecida. No se si hay alguna forma de hacerlo o alguna otra manera...
Saludos
No controlo muy bien el tema, pero se me ocurre que lo que puedes hacer es añadir algunas líneas, en el evento buttom que estas empleando, que realicen las comprobaciones que desees verificar. Allí, dentro de este, puedes hacer que te envíe un mensaje que te indique el resultado de dichas comprobaciones. Existen varias tipos de Mensajes, dependiendo de las opciones que quieras que este te dé. (por ejemplo ShowMessage()). Cuando el mensaje es enviado, el porgrama detiene su ejecución y espera que el usuario le indique una de las opciones.

Espero te sirva de algo.

Saludos
Responder Con Cita
  #6  
Antiguo 29-08-2007
meme meme is offline
Miembro
 
Registrado: jun 2007
Posts: 30
Poder: 0
meme Va por buen camino
Hola, gracias por tu respuesta.
El problema es que no se exactamente como hacer para que compruebe (en el codigo del evento del buttom) si se han producido eventos en otros componentes. He pensado en utilizar Application->OnIdle y cuando se produzca algún evento en otro componente, procese la informacion de dicho evento, pero tampoco se como meterle mano. Si alguien tuviera alguna idea...
Saludos
Responder Con Cita
  #7  
Antiguo 29-08-2007
ALAM ALAM is offline
Registrado
 
Registrado: abr 2007
Posts: 7
Poder: 0
ALAM Va por buen camino
No se exactamente a qué te refieres con "procesar la información de un evento". Pero se me ocurre que si lo que quieres hacer es verificar si un evento, o en terminos genereales alguna función, fué ejecutada o no, yo usaria una variable booleana, que este declarada en un ámbito de suficiente covertura, que tomase el valor de false por defecto y en caso de ser utilizada la ponga true, con esto ya sabrás si la función, o por ejemplo un evento, a sido ejecutado.
También puedes utilizar la propiedad Tag del buttom, de tal manera que se modifique el valor por defecto cuando utilices o llames al evento.

Tampoco controlo el tema, pero esto es lo que se me ocurre, ojalá te pueda servir de algo.

Saludos
Responder Con Cita
  #8  
Antiguo 30-08-2007
meme meme is offline
Miembro
 
Registrado: jun 2007
Posts: 30
Poder: 0
meme Va por buen camino
Hola,

Gracias.He probado con una variable booleana global pero no consigo nada. He pensado hacer dos aplicaciones, una que sea la que establece la conexion con el server (winsock) y otra aplicacion que sea la que presente archivos. Ahora tengo que conseguir comunicar las dos aplicaciones, no se lo que es peor. Estoy bicheando SendMessage...

Salu2
Responder Con Cita
  #9  
Antiguo 30-08-2007
Avatar de paldave
paldave paldave is offline
Miembro
 
Registrado: ago 2007
Ubicación: Uruguay
Posts: 148
Poder: 17
paldave Va por buen camino
Mira acá para gestionar mensajes entra aplicaciones.
Creo que no es posible lo que planteabas al principio de detener la ejecución hasta que se procesen otros eventos, ya que si tu aplicación tiene un solo hilo se mantendrá procesando el código del evento actual hasta que termine y solo luego procesará los otros mensajes enviados a los demás componentes, pero nada te impide hacer que tu aplicación sea multihilo.
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
manejo de arbol de contenidos y manejo se sonido y video Buelos Internet 4 09-07-2007 14:52:45
Eventos en DLL ziqabo API de Windows 1 11-06-2007 20:04:21
Duda principiante con manejo de formularios Chompiras Varios 6 11-02-2006 20:49:55
Duda sobre los eventos VK_... gryphus OOP 6 11-05-2005 19:08:46
Eventos xerkan Firebird e Interbase 5 13-10-2003 17:21:18


La franja horaria es GMT +2. Ahora son las 14:28:31.


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