Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Modificar O Crear Componente Edit (https://www.clubdelphi.com/foros/showthread.php?t=22356)

spider_Ramon 13-06-2005 17:46:00

Modificar O Crear Componente Edit
 
HOLA A TODOS ME GUSTARIA ABE RSI EXISTELA POSIBILIDAD DE QUE AL COMPONENTE TEDIT AGREGARLE UNA PROPIEDAD NUEVA POR EJEMPLO QUE CUANDO TENGA EL FOCO CAMBIE DE COLOR Y AL SALIR, O QUE AL ENTRAR EL FOCUS CAMBIE EL FONT A NEGRITA Y L SALIR ME EXPLICO, ESTO CON LA FINALIDAD DE NO CREAR UN COMPONENTE NUEVO CON LASMISMAS CLASES DEL TEDIT Y SOLO AGREGARLE LO ANTERIOR.

PARA AGREGRA MAS, NUNCA EH ECHO UN COMPONENTE POR ESO QUIERO MEJOR MODIFICAR EL TEDIR, O QUE ME RECOMIENDAN USTEDES.


SI PUEDEN ORIENTARME GRACIAS

ralmeida@sewsus.com

delphi.com.ar 13-06-2005 18:02:08

Primero quiero recomendarte leer la guía de estilos de los foros, luego:

Aqui tienes un ejemplo de como se cambia el color de un TPanel (tendrías que adaptarlo) cuando cambia el foco: http://www.clubdelphi.com/foros/showthread.php?t=940
Y aquí tienes un ejemplo de como se le ha agregado la propiedad Alignment a un TCustomEdit: http://www.clubdelphi.com/foros/showthread.php?t=1235

Saludos!

spider_Ramon 13-06-2005 18:08:03

gracias delphi com ar
 
OTRA PREGUNTA,
COMO PUEDO GENERAR UN NUEVO COMPONENTE Y QUE CONTENGA TODAS LAS CARACTERISTICAS DEL TEDIT NORMAL Y ASI YO SOLO AGREGAR MI NUEVA PROPIEDAD L ACUAL PUEDE SER FOCUSET (CUANDO ENTRE EL FOCO) Y FOCUSOUT(CUANDO SALGA EL FOCO)


GRACIAS YDISCULPA LA MOLESTIA

ralmeida@sewsus.com

delphi.com.ar 13-06-2005 18:12:35

Te reitero la recomendación para participar en el foro, de leer la Guía de Estilo.

Herédalo de TEdit en lugar de TCustomEdit, ya que el TEdit publica todas las propiedades protegidas de TCustomEdit. Ademas, te recomiendo leer un poco de teoría para saber que es lo que estas haciendo.

Saludos!

roman 13-06-2005 18:20:21

spider Ramon

A ver si ya nos ponemos a leer la guía de estilo como te han sugerido. La estás infringiendo.

Por otra parte, como te indica delphi.com.ar, si quieres crear componentes lo mejor es que empieces por leer algo de teoría. Puedes empezar por la misma ayuda de Delphi que trae un capítulo completo dedicado a la creación de componentes o aquí mismo en el Club, en la sección de Manuales podrás encontrar uno escrito por Luis Roche.

// Saludos

spider_Ramon 13-06-2005 18:25:11

Ok Y Gracias
 
Gracias Roman Y Delphi Com Ar Por Mi Necesas,


Y Voy A Leer En Este Momento Lo Queustedes Me Indican

Una Vez Leido Empiezo La Practica Gracias De Nuevo

Neftali [Germán.Estévez] 14-06-2005 09:54:51

Aquí tienes un ejemplo para hacerlo sin derivar el componente, programándolo en el form:
http://www.swissdelphicenter.ch/torr...ode.php?id=585

Y si quieres derivar el componente para responder a los eventos de ENTER y EXIT y cambiar el color, pues aquí tienes el código (es de un mensaje anterior que contesté con la misma pregunta):

Código Delphi [-]
 unit EditColor;
 
 interface
 
 uses
   Windows, Messages, SysUtils, Classes, Controls, StdCtrls, GRaphics;
 
 type
   TEditColor = class(TEdit)
   private
     FColorEnter: TColor;
     FColorExit: TColor;
 
     // Redefinimos los mensajes de entrada y salida
     procedure CMExit(var Message: TCMExit); message CM_EXIT;
     procedure CMEnter(var Message: TCMEnter); message CM_ENTER;
   protected
     { Protected declarations }
   public
     { Public declarations }
     constructor Create(AOwner: TComponent); override;
   published
     // Color que queremos al entrar (cuando tiene el foco)
     property ColorEnter:TColor read FColorEnter write FColorEnter default clInfoBk;
     // Color que queremos al salir (cuando no tiene el foco)
     property ColorExit:TColor read FColorExit write FColorExit default clWindow;
   end;
 
 procedure Register;
 
 implementation
 
 // Registrar el componente.
 procedure Register;
 begin
   RegisterComponents('Neftali', [TEditColor]);
 end;
 
 { TEditColor }
 // Interceptamos el mensaje de entrada
 procedure TEditColor.CMEnter(var Message: TCMEnter);
 begin
   inherited;
   Self.Color := Self.FColorEnter;
 end;
 
 // Interceptamos el mensaje de salida
 procedure TEditColor.CMExit(var Message: TCMExit);
 begin
   inherited;
   Self.Color := Self.FColorExit;
 end;
 
 // Constructor (valores iniciales)
 constructor TEditColor.Create(AOwner: TComponent);
 begin
   inherited;
   // Valores iniciales
   Self.FColorEnter := clInfoBk;
   Self.FColorExit := clWindow;
 end;
 
 end.

rarratia 19-11-2006 19:03:27

TEDIT con propiedad transparente
 
Amigos:

¿Como se puede hacer para que un componente TEDIT tenga la propiedad de fondo transparente como la tiene un componente TLabel?

Gracias

dec 19-11-2006 19:25:17

Hola,

Cita:

Empezado por rarratia
¿Como se puede hacer para que un componente TEDIT tenga la propiedad de fondo transparente como la tiene un componente TLabel?

Se me ocurre que tal vez puedas conseguir el efecto que buscas estableciendo el color de fondo del "TEdit" como el de su contenedor, por ejemplo, un formulario o panel.

rarratia 25-11-2006 14:27:57

TEdit transparente
 
La pregunta va en relación a agregar la propiedad transparente a un TEdit, cosa que si el fondo es una foto te funcione también porque sobre una foto no puedes poner al TEdit un color de fondo, por favor a alguno de los que saben bien hacer componentes nuevos derivados del anterior si puede guiarme como crear esa propiedad...


La franja horaria es GMT +2. Ahora son las 18:49:39.

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