Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-05-2003
Tanix Tanix is offline
Miembro
 
Registrado: may 2003
Ubicación: Currando... :-(
Posts: 53
Poder: 21
Tanix Va por buen camino
Lightbulb Controles de un boton...

Buenas a tod@s... mi pregunta es la siguiente: Alguien sabria como puedo controlar si estoy dentro o no de un control, es decir: Tengo un boton al que quiero que al pasar el raton por encima cambie de color, pero al salir de el vuelva al color original... He encontrado una solución cutre, ya que esta dentro de un panel, en el OnMouseMove del boton lo pongo de un color, y en el OnmouseMove del panel lo vulevo a cambiar, pero esto es bastante conflictivo... Me imagino que habra soluciones mas finas ... Gracias de antemano por sus respuestas...
__________________
La suerte favorece a una mente preparada...
Responder Con Cita
  #2  
Antiguo 29-05-2003
Avatar de Delphi Man
Delphi Man Delphi Man is offline
Miembro
 
Registrado: may 2003
Ubicación: Murcia
Posts: 111
Poder: 21
Delphi Man Va por buen camino
Ante todo saludos

Bueno Tanix, el evento OnMouseMove esta precisamente para eso, asi que o no entiendo tu pregunta, o sería mejor ke explicases a ke te refieres con el tema de que es conflictivo.
Responder Con Cita
  #3  
Antiguo 29-05-2003
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Podrías utilizar los mensajes, CM_MOUSEENTER y CM_MOUSELEAVE, este es un ejemplo un poco simplista:

Código:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls;

type
  TMyPannel = class(TPanel)
  private
    procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
    procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
 end;

  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
  public
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

{ TMyPannel }

procedure TMyPannel.CMMouseEnter(var Message: TMessage);
begin
  Color := clRed;
end;

procedure TMyPannel.CMMouseLeave(var Message: TMessage);
begin
  Color := clBtnFace;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  With TMyPannel.Create( Self ) do
    Parent := Self;
end;

end.
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #4  
Antiguo 02-06-2003
Tanix Tanix is offline
Miembro
 
Registrado: may 2003
Ubicación: Currando... :-(
Posts: 53
Poder: 21
Tanix Va por buen camino
En primer lugar darles las gracias por sus post. Decirte, Dalphi Man, que lo de conflictivo es por el hecho de que no se trata de una solucion con "estilo" lo que propongo. El hecho de que en el evento OnMouseMove del panel le cambie el color al boton digo que es "conflictivo" porque no siempre funciona, como por ejemplo si pasas el raton rapidamente por el boton...
Probare el codigo q me pones delphi.com.ar... Gracias... De todas formas para aclarar el mensaje deciros que lo que quiero hacer es lo que esta el en office, que cuando pasas el raton por un boton este cambia de color y forma... No se si con el codigo que esta es suficiente, aunque me huelo que es mas complejo que eso... Alguien sabe como hacerlo???... Gracias, y hasta pronto...
__________________
La suerte favorece a una mente preparada...
Responder Con Cita
  #5  
Antiguo 02-06-2003
Avatar de Delphi Man
Delphi Man Delphi Man is offline
Miembro
 
Registrado: may 2003
Ubicación: Murcia
Posts: 111
Poder: 21
Delphi Man Va por buen camino
Para lo ke kieres de los botones al estilo office, creo que te valen unos componentes llamados XPMenu. Hay varios post ke hablan sobre éstos. Un saludo
Responder Con Cita
  #6  
Antiguo 02-06-2003
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Bien puedes buscar algunos componentes de terceros que hagan lo que tu quieres como propone Delphi Man, o puedes utilizar el código que te he pasado, que te aseguro funciona, y seguramente es lo que vas a encontrar en el código de lo que bajes de la web.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #7  
Antiguo 03-06-2003
Tanix Tanix is offline
Miembro
 
Registrado: may 2003
Ubicación: Currando... :-(
Posts: 53
Poder: 21
Tanix Va por buen camino
Gracias a los dos... Y si, el codigo funciona... Saludos!!!
__________________
La suerte favorece a una mente preparada...
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 23:19:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi