Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:

Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro


Problemas con el Sistema easy de Borland

Trucos y Consejos con respecto al Lenguaje C++ Builder.

Moderador: yalmar

Problemas con el Sistema easy de Borland

Notapor Bast el Lun Dic 17, 2007 6:40 am

Buenos días,

Estoy desarrollando una aplicación en C++ y utilizo el entorno C++ Builder 6.0. He creado un proyecto win32 gráfico y esta opción abre un formulario en el que puedo introducir componentes gráficos: (botonoes, paneles, labels, radiobuttons, etc..) de forma muy cómoda y sin escribir nada de código.

Es una gran ventaja y he utilizado este entorno por esta razón.

Sin embargo, al crear el proyecto, ya se escribe de forma automática el código de generación de la ventana utilizando un objeto application.

Código que tengo:

WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) {
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}


Este código enlaza la ventana con el formulario en el que estoy introduciendo componentes gráficos. El bucle principal de la aplicación se encuentra en el interior de la función Run. Se supone que, cuando la aplicación está en ejecución, el hilo se encuentra en el interior de la función Run y, cualquier cosa que escriba a continuación, no se ejecuta.

Mi problema es el siguiente: Necesito tener el control de la posición del ratón en cualquier momento, durante la ejecución de la aplicación. Quiero realizar una serie de eventos cuando el cursor está en ciertas zonas de la pantalla. En Builder C++ hay un método OnMouseMove para cada componente, y se llaman de forma automática cuando el puntero se sitúa encima de cada uno. pero esto no es lo que yo quiero usar.

Si creo la ventana utilizando la API de Windows y creo una ventana desde CERO, entonces sí que tengo un acceso total: Usando un WinMain propio, con su Dispatch de mensajes y su WindowProcedure para el tratamiento de eventos.
Pero si lo hago así, entonces pierdo la relación entre el Form y los compònentes visuales (paneles, botones, labels...) que Borland permite seleccionar y pegar en el Form sin escribir código...

¿Alguien sabe QUÉ puedo hacer?... Si creo una aplicación con Borland, aparece un Formulario en el que puedo pegar cualquier componente sin escribir código y tengo unas herramientas muy cómodas para crear aplicaciones windows pero pierdo control sobre el bucle principal y control de eventos o paso de mensajes...

De la otra forma, creo yo la ventana y controlo los mensajes pero no sé como relacionar esa ventana que he creado con el Formulario para poder usar las herramientas de pinchar y arrastrar componentes del Borland...

Por favor... algo de luz......


Saludos
Bast
Novato
Novato
 
Mensajes: 2
Registrado: Lun Dic 10, 2007 6:31 am

Volver a C++ Builder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados