![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
Hola
Bueno, por aqui sigo pensando. Creo que la cosa podria andar por aqui: Código:
var txt : string; begin txt:= lblMarquee.Caption; if rgDirection.ItemIndex = 0 then //left lblMarquee.Caption:= Copy(txt, 2, length(txt)-1) Copy(txt,1,1) Bueno supongo que por aqui va el asunto, me ayudais. Saludos |
|
#2
|
||||
|
||||
|
Con gusto te ayudo, pero si me lo simplificas un poco en la explicacion me perdi y no logro entender que quieres hacer, hasta lo que lei :
Tienes un Label y un Edit, que hace el label que hace el edit????
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
|
#3
|
||||
|
||||
|
Hola amigo
Muy simple: Quiero hacer un componente TLabel. El componente tiene que hacer lo que hace en el programa (segundo codigo) que postee, osea moverse de un lado a otro. Este componente tiene que recibir el caption de un edit normal que coloque en el form, independiente del componente que quiero hacer. El componente que postee (primer codigo) lo que hace es parpadear, lo que quiero que haga es moverse, por eso puse el codigo del programa para que lo relacionarais. Vamos hombre que esta claro, ya se, es domingo. ![]() Saludos |
|
#4
|
||||
|
||||
|
Precisamente alli esta mi duda, es que es domingo y aqui en mi casa sostienen un interesante partido de domino por eso me cuesta concentrarme, segun leo el codigo que muestras toma desde un edit lo que necesita, por eso te digo si ya esta listo no entiendo que mas necesitas, o es que el codigo no funciona???
si no me equivoco el lbmarquee se actualiza desde edtext en el evento onchange ![]()
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
|
#5
|
||||
|
||||
|
Hola
Ya analizaste el segundo codigo, es realmente simple, solo que este no es un componente, es un programa, ya se que lo puedo convertir en un componente, pero me traeria el edit ademas de otros. Los dos codigos funcionan perfectamente, Lo que quiero es hacer una mezcla de ambos, pero que solo quede el label, no el edit (como el primer codigo), el edit lo pondra a mi antojo en algun form, no importa cual. La idea es que al poner el nuevo componente en un form pueda hacer que este se mueva y que el caption sea capturado de otro componente, edit, dbeit u otro. Gracias por tu ayuda, quien va ganando?. Saludos |
|
#6
|
||||
|
||||
|
Ok ahora si entendi perdona mi lentitud, pues a mi modo de ver las cosas hay que crear un propiedad donde se relacion el edit que quieres y en el timer actualizar el caption, algo asi
Cita:
Cita:
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
|
#7
|
||||
|
||||
|
Hola
Ahora el lento soy yo. La Propuesta del Property, la capto, esto iría en el componente asi: Código:
published
property Velocidad : integer read FVelocidad write SetVelocidad default 400;
property MyEdit: TEdit read fTexto write fTexto;
end;
Saludos |
|
#8
|
||||
|
||||
|
Vamos a ver que te parece esto:
Código:
unit Blinklbl;
interface
uses
Classes, StdCtrls, ExtCtrls;
type
TAnimLabel = class(TLabel)
private
FVelocidad: integer;
FTimer: TTimer;
procedure SetVelocidad(Valor: Integer);
protected
procedure Animar(Sender: TObject); virtual; abstract;
public
constructor Create(AOwner : TComponent); override;
destructor Destroy; override;
published
property Velocidad: Integer read FVelocidad write SetVelocidad;
end;
TBlinkLabel = class(TAnimLabel)
protected
procedure Animar(Sender: TObject); override;
end;
TMarqueeLabel = class(TAnimLabel)
private
FInvertir: Boolean;
protected
procedure Animar(Sender: TObject); override;
published
property Invertir: Boolean read FInvertir write FInvertir;
end;
procedure Register;
implementation
{ TAnimLabel }
constructor TAnimLabel.Create(AOwner : TComponent);
begin
inherited Create(AOwner);
FTimer := TTimer.Create(Self);
FTimer.OnTimer:= Animar;
FVelocidad:= 400;
FTimer.Interval:= FVelocidad;
FTimer.Enabled:= True;
end;
destructor TAnimLabel.Destroy;
begin
FTimer.Free;
inherited destroy;
end;
procedure TAnimLabel.SetVelocidad(Valor: Integer);
begin
If FVelocidad <> Valor then
begin
if Valor <= 0 then
begin
FVelocidad:= 0;
FTimer.Enabled:= FALSE;
end else
begin
FVelocidad:= 0;
FTimer.Enabled:= FALSE;
end;
FTimer.Interval:= FVelocidad;
end;
end;
{ TBlinkLabel }
procedure TBlinkLabel.Animar(Sender: TObject);
begin
Visible:= not(Visible);
end;
{ TMarqueeLabel }
procedure TMarqueeLabel.Animar(Sender: TObject);
begin
if FInvertir then
Caption:= Copy(Caption,Length(Caption),1) + Copy(Caption,1,Length(Caption)-1)
else
Caption:= Copy(Caption,2,MAXINT) + Copy(Caption,1,1);
end;
procedure Register;
begin
RegisterComponents('Curso', [TBlinkLabel]);
RegisterComponents('Curso', [TMarqueeLabel]);
end;
end.
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| tlabel enabled | anubis | Varios | 12 | 10-05-2007 08:32:50 |
| un TLabel como Hipervínculo | zuriel_zrf | Internet | 9 | 06-01-2006 22:11:49 |
| tlabel como Centrar ? | Pascual Montes | Varios | 4 | 11-06-2005 02:53:33 |
| un TLabel para ir a pagina web | zuriel_zrf | Internet | 1 | 19-02-2004 11:16:29 |
| Tlabel enlazado a un TDBedit | CORBATIN | OOP | 2 | 15-09-2003 00:29:10 |
|