![]() |
¿Por qué no se me abre el DIALOGBOX?
En un "TBitBtn" de la "Form" principal llamo a una función que debe abrir una ventana modal, mediante el API de Windows (DialogBox). La función requiere (entre otros parámetros) el HANDLE de la ventana que hace la llamada (en este caso, Form3->Handle), pero no se me muestra el cuadro de diálogo definido en el archivo de recursos correspondiente.
¿Alguién me puede indicar dónde tengo el error? Os transcribo el código fuente, tanto el del archivo de recursos como el de la implementación de la función. Tengo el siguiente "resource.h" Código:
#define DLG_BUSCAR 101Código:
DLG_BUSCAR DIALOGEX 0, 0, 237, 79Código:
#include <windows.h>Código:
#include "buscar.h" |
Hola, ¿y como llamas a BuscarValor?
|
No estoy muy seguro, pues no uso esta funcion de DialogBox pero leyendo esto , ¿donde pone NULL no deberia ser el handle de la aplicación? dicho de otra manera, ¿tiene la funcion donde buscar el recurso DLG_BUSCAR? y otra cosa, ¿con el mensaje INIT_DIALOG no se deberia mostrar 'manualmente' la ventana?
|
Cita:
He probado tanto con NULL como con el HANDLE de la aplicación y el resultado es el mismo. Por otra parte, el mensaje WM_INITDIALOG me sirve (en este caso) para cargar en el COMBO una serie de items mediante SendMessage(handle_del_combo, CB_ADDSTRING, 0, LPARAM(texto)). También sirve para definir el aspecto que mostrarán otros controles. No sé si con esto te refieres a mostrar "manualmente" la ventana. Repito, muchas gracias por tu respuesta |
me refiero...si sobreescribes el mensaje init_dialog, no deberas poner un visible = true o algo para que muestre el dialogo?
|
| La franja horaria es GMT +2. Ahora son las 02:36:14. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi