| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Carlos J. Fernandez Master


Registrado: 27 Oct 2004Mensajes: 574
|
Publicado: Mar 23 Oct, 2007 3:23 pm Asunto: TCppWebBrowser no funciona el INTRO |
|
|
Buenas a todos,
Tengo puesto un TCppWebBrowser y lo que me deja alucinando es que no funciona el INTRO, os cuento, accedo por ejemplo a un foro desde mi aplicacion con el TCppWebBrowser que ademas es igual que este, es phpBB y cuando por ejemplo quiero escribir un mensaje la tecla INTRO no hace nada, os ha pasado a alguien alguna vez?
Hay algun evento o alguna historia que me impida usar el INTRO.
Un abrazo a todos.
Carlos |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Mie 24 Oct, 2007 7:16 pm Asunto: |
|
|
Hola Carlos:
Añade un componente "TApplicationEvents" (pestaña: Additional) y en su evento "OnMessage" el siguiente código:
| Código: | if ((Msg.message == WM_KEYDOWN || Msg.message == WM_KEYUP)
&& (Msg.wParam == VK_RETURN || Msg.wParam == VK_EXECUTE))
{
Handled = IsDialogMessage(CppWebBrowser1->Handle, &Msg);
if (Handled)
{
static IOleInPlaceActiveObject* OleInPlaceActiveObject = 0;
if (!OleInPlaceActiveObject)
CppWebBrowser1->Application->QueryInterface<IOleInPlaceActiveObject>(&OleInPlaceActiveObject);
if (OleInPlaceActiveObject)
OleInPlaceActiveObject->TranslateAccelerator(&Msg);
}
} |
* También es recomendable añadir "OleInitialize(0);" en el constructor del form para que funcionen las teclas de copiar y pegar entre otras cosas. |
|
| Volver arriba |
|
 |
Carlos J. Fernandez Master


Registrado: 27 Oct 2004Mensajes: 574
|
Publicado: Mie 24 Oct, 2007 11:47 pm Asunto: |
|
|
Muchas gracias,
Funciona de maravilla, me estaba volviendo loco haciendo pruebas.
Gracias de nuevo.
Un abrazo
Carlos |
|
| Volver arriba |
|
 |
sisabb Lt JG

Registrado: 07 Ago 2003Mensajes: 71
|
Publicado: Lun 10 Nov, 2008 9:15 am Asunto: A mi me da error |
|
|
He visto esta solución y lo he intentado probar pues yo tambien tengo este problema y me da un error :
Impror use of typedef 'IOleInPlaceActiveObject'
Estoy con Builder 5.
Me faltará algo en mi código. |
|
| Volver arriba |
|
 |
Carlos J. Fernandez Master


Registrado: 27 Oct 2004Mensajes: 574
|
Publicado: Lun 10 Nov, 2008 1:53 pm Asunto: |
|
|
La verdad es que con Builder 5 no tengo ni idea.
Todo lo que yo he hecho es con el Builder 6 y funciona perfecto, no tengo el 5 instalado para poder probarlo.
Un abrazo.
Carlos |
|
| Volver arriba |
|
 |
sisabb Lt JG

Registrado: 07 Ago 2003Mensajes: 71
|
Publicado: Mar 11 Nov, 2008 8:19 am Asunto: |
|
|
Gracias por responder tan pronto a pesar de no poder dar la solución, espero que igual si lo ve Leo pueda decir algo más.
Saludos. |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Mar 11 Nov, 2008 1:14 pm Asunto: |
|
|
Cambia la línea:
| Código: | CppWebBrowser1->Application->QueryInterface<IOleInPlaceActiveObject>(&OleInPlaceActiveObject); |
por la siguiente:
| Código: | CppWebBrowser1->Application->QueryInterface(IID_IOleInPlaceActiveObject, (void**)&OleInPlaceActiveObject); |
|
|
| Volver arriba |
|
 |
sisabb Lt JG

Registrado: 07 Ago 2003Mensajes: 71
|
Publicado: Mar 11 Nov, 2008 3:01 pm Asunto: |
|
|
| Gracias Leo ya compila perfectamente, lo único que no me funcionan las teclas, de todos modos igual tiene que ver que es un CPPBrowser que creo dinamicamente en un form de una DLL. |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Mar 11 Nov, 2008 4:11 pm Asunto: |
|
|
| En una aplicación normal funciona.. sin ver como lo tienes no puedo ayudarte... si quieres enviarme un ejemplo que reproduzca tu problema podría revisarlo. Mi email es: leosoftware ARROBA gmail PUNTO com |
|
| Volver arriba |
|
 |
|