Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-06-2006
miguelml miguelml is offline
Miembro
 
Registrado: nov 2005
Posts: 24
Poder: 0
miguelml Va por buen camino
Si queria usar un messagedlg era precisamente para ahorrarme crear una form, y ahorrarme codigo, nosé, pensé que seria más facil, no obstante, gracias dec, e usado el codigo del link que me has pasado y me ha ido a la perfección, aunque e tenido que incluir un poco de codigo, pero weno, me ha ido bien.

un saludo!
Responder Con Cita
  #2  
Antiguo 06-06-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Cita:
Empezado por Dec
¿De dónde sacas que la función compruebe lo que tiene que retornar basándose en el título de ningún botón? ¡Por eso es casi perfecta! ¡Porque devuelve justo lo que se espera que devuelva un "MessageDlg"!
No he pretendido decir eso.

Imagina que le paso 3 captions para los buttons:
- "Crear Nueva Factura"
- "Insertar en la Factura Actual"
- "Cancelar Proceso"

¿Qué botones asocio con cada una de esos títulos? ¿eh?, ¿eh?, ¿eh?

Prefiero que la rutina devuelva el texto, o una constante u otra cosa que aclare el código fuente; para no recordar que mrIgnore se corresponde con "Insertar en la Factura Actual".

Imagina que en mi programa creo 3 constantes:
Código Delphi [-]
const CREAR = "Crear Factura";
const INSERTAR = "Insertar en Factura Actual";
const CANCELAR = "Cancelar Proceso";
A tu rutina le paso las 3 constantes, y la función me devuelve el Caption de los botones. Fijate qué código tan fácil de leer:
Código Delphi [-]
var respuesta :string;
begin
respuesta =  MessageDlgPropio(¿Qué desea hacer con los productos seleccionados?, [CREAR, INSERTAR, CANCELAR]);

if respuesta = CREAR then
  // blah blah
else if respuesta = INSERTAR then
  // blah blah
else if respuesta = CANCELAR
  // blah blah

En programas pequeños no importa, pero cuando se trata de depurar o corregir un programa de 300.000 lineas de código, te aseguro que si importa esos pequeños detalles que te alejan de tu tarea principal (depurar o corregir), haciendo que pierdas tiempo viendo si el valor devuelto se corresponde con la lógica del programa.

Por supuesto es mi opinión, ni buena, ni mala, es una opinión más; de eso se trata al responder un hilo, compartir ideas y experiencias.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 06-06-2006 a las 21:47:22.
Responder Con Cita
  #3  
Antiguo 06-06-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.141
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Pues mira que me estás convenciendo... Tal vez pudiera usarse la función que enlazé más arriba para mostrar diálogos hasta cierto punto predecibles, esto es, que contengan un par de botones, en definitiva, tal como se espera del "MessageDlg".

Ahora bien, ¿puede mejorarse el asunto? No lo dudo. Desde luego lo que dices parece muy razonable.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 07-06-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Como dije anteriormente, esa función es bastante limitada:
- Barra de título en inglés.
- Iconos bastante justitos (son 4, quizás basten)
- Habría que modificar también el Width de cada botón, para que se ajuste al texto pasado, si no, quedará truncado el texto.
- Ya puestos a modificar un Dialog de ese tipo, pues incluso se le pueden añadir negritas, subrayados y colores al texto, para hacerlo más "moderno". Hay muchos Labels que lo permiten.

Siempre se puede crear un Form para ese propósito y reutilizarlo en varios proyectos.

Que conste que lo pensé hace tiempo, pero seamos realistas, hace falta tiempo para hacerlo y un simple MessageBox "dá el avío" .

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Botones MessageDlg en Español Alexander Varios 13 20-09-2012 16:42:30
cambiar a español los botones del MessageDlg negama Varios 4 02-02-2012 18:38:54
Reportes en personalizados jesgami Impresión 2 15-11-2005 20:35:28
un MessageDlg con 3 botones.. Jaco Varios 2 10-10-2003 23:05:50
un MessageDlg con 3 botones.. Jaco API de Windows 1 10-10-2003 22:37:40


La franja horaria es GMT +2. Ahora son las 00:47:26.


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
Copyright 1996-2007 Club Delphi