Ver Mensaje Individual
  #11  
Antiguo 11-05-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
En lo poco que entiendo del tema te puedo comentar que en

Template := 'DLGTEMPLATE'

'DLGTEMPLATE' se refiere a un recurso que se compila junto con la aplicación en donde se define justamente la plantilla del cuadro de diálogo que vas a usar.

Aunque la VCL de Delphi generalmente nos evita meternos en estos detalles, tras bambalinas todos los cuadros de diálogo en Windows se definen mediante estas plantillas en las que uno especifica las dimensiones y los controles que contienen.

En el caso del OpenPictureDialog, el recurso se incluye en la línea:

{$R ExtDlgs.res}

que está justo antes del constructor de la clase, y hace referencia al archivo ExtDlgs.rc que se encuentra en la misma carpeta donde está ExtDlgs.pas y cuyo contenido es:

Código:
DLGTEMPLATE DIALOG 0, 0, 316, 76
STYLE 0x404L | WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS
FONT 8, "MS Sans Serif"
LANGUAGE LANG_NEUTRAL , SUBLANG_NEUTRAL
{
 LTEXT "", 1119, 0, 0, 204, 76, SS_LEFT | WS_CHILD | NOT WS_VISIBLE | WS_GROUP
}

PREVIEWGLYPH BITMAP
{
 '42 4D F6 00 00 00 00 00 00 00 76 00 00 00 28 00'
 '00 00 10 00 00 00 10 00 00 00 01 00 04 00 00 00'
 '00 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00'
 '00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 80'
 '00 00 00 80 80 00 80 00 00 00 80 00 80 00 80 80'
 '00 00 80 80 80 00 C0 C0 C0 00 00 00 FF 00 00 FF'
 '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
 '00 00 FF FF FF 00 33 33 33 33 33 33 33 33 00 00'
 '00 00 00 00 33 00 0F FF FF FF FF F0 30 00 0F FF'
 'FF FF 00 00 00 03 0F FF FF F0 78 87 00 33 0F FF'
 'FF 07 88 E7 F0 33 0F FF FF 08 88 87 80 33 0F FF'
 'FF 08 E8 87 80 33 0F FF FF 07 EE 87 F0 33 0F FF'
 'FF F0 78 87 03 33 0F FF FF FF 00 00 33 33 0F FF'
 'FF FF FF F0 33 33 0F FF FF FF 00 00 33 33 0F FF'
 'FF FF 08 03 33 33 0F FF FF FF 00 33 33 33 00 00'
 '00 00 03 33 33 33'
}
Me parece que la primera línea:

DLGTEMPLATE DIALOG 0, 0, 316, 76

es donde se indican las dimensiones del cuadro.

// Saludos
Responder Con Cita