Ver la Versión Completa : Se puede hacer rotar los showmessages entre los botones ???
llSnakell
25-01-2011, 23:00:35
Hola
Lo que pasa es que estoy haciendo un Programa con mensajes y botones.
Lo que quiero realizar es que los mensajes que aparareceran al presionar los botones , vayan cambiando de botones !! Para que al apretar un boton no aparesca el mismo mensaje .
Se podra ??
Gracias
Saludos !
ecfisa
25-01-2011, 23:03:31
Hola.
Sobre la pregunta del título, la respuesta es no. ShowMessage es un procedimiento cuya ventana no tiene esa capacidad.
En cuanto a el mensaje, no entiendo muy bién esta parte al presionar los botones , vayan cambiando de botones podrías explicarlo un poco más o con algún ejemplo ?
Un saludo.
llSnakell
25-01-2011, 23:12:49
Hola
A lo que me refiero es:
Ejemplo
Tenemos 2 botones diferentes, con diferentes showmessages cada uno.
lo que quiero es que el Showmessage del 1° boton cambie al 2° boton, el Showmessage del 2° boton cambie al 1° , eso es !!!
pero lo que intento hacer es con 20 botones xD :P
Gracias
Saludos. ;)
ecfisa
25-01-2011, 23:20:06
Hola de nuevo.
Fijate si este [ Truco (http://www.clubdelphi.com/trucos/index.php?id=577) ] que hizo Lord Delfos te sirve o te dá una idea.
Otra opción es que hagas tu propio cuadro de diálogo, al fin y al cabo es sólo otro form...
Un saludo.
Neftali [Germán.Estévez]
26-01-2011, 13:11:34
Bueno, se pueden hacer cosas básicas; Cambiar algunas propiedades y ñadir algunos controles nuevos, pero si tienes que cambiar demasiado, tal vez es mejor que te crees un formulario personalizado.
Por ejemplo, con esto muestras un dialogo "estandard":
http://img153.imageshack.us/img153/4297/imagen569.png
procedure TForm1.Button4Click(Sender: TObject);
var
AMsgDialog: TForm;
res:TModalresult;
begin
AMsgDialog := CreateMessageDialog('Mensaje de prueba...', mtWarning, [mbYes, mbNo]) ;
res := AMsgDialog.ShowModal;
end;
Con este código puedes apreciar algunos cambios, incluso puedes añadir algun componente nuevo (en este caso un checkbox):
procedure TForm1.Button2Click(Sender: TObject);
var
AMsgDialog: TForm;
res:TmodalResult;
lbl:Tlabel;
btn:TButton;
img:TImage;
chk:TCheckBox;
begin
AMsgDialog := CreateMessageDialog('Mensaje de prueba...', mtWarning, [mbYes, mbNo]) ;
AMsgDialog.Caption := 'Cambiando título...' ;
// Cambiar el ancho
AMsgDialog.Width := AMsgDialog.Width * 2;
// Modificar el Label
lbl := TLabel(AMsgDialog.FindComponent('Message'));
lbl.Font.Style := lbl.Font.Style + [fsItalic];
lbl.Font.Color := clRed;
// Modificar el YES
btn := TButton(AMsgDialog.FindComponent('YES'));
btn.Font.Style := btn.Font.Style + [fsBold];
// Modificar la imagen
img := TImage(AMsgDialog.FindComponent('Image'));
img.Stretch := true;
img.Picture.LoadFromFile('r:\neftali.bmp');
// Añadir un CheckBox
chk := TCheckBox.Create(AMsgDialog);
chk.Parent := AMsgDialog;
chk.Caption := 'No volver a &recordarmelo.';
chk.Width := 200;
AMsgDialog.Height := AMsgDialog.Height + 30;
chk.Left := 15;
chk.Top := AMsgDialog.Height - 20 - 30;
res := AMsgDialog.ShowModal;
AMsgDialog.Free;
end;
http://img153.imageshack.us/img153/3907/imagen568.png
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.