AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Blinkendes Label

Ein Thema von konda · begonnen am 31. Dez 2005 · letzter Beitrag vom 3. Jan 2006
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von konda
konda

Registriert seit: 20. Dez 2005
253 Beiträge
 
Turbo Delphi für Win32
 
#1

Blinkendes Label

  Alt 31. Dez 2005, 18:02
hallo, ich weiß nicht ob das hier die richtige kategorie ist. ich will ne komponente programmieren die in intervallen blinkt, also so ähnlich wie ein timer kompiniert mit einem label das abwechselnd sichtbar und unsichtbar ist. nur leider wiess ich nicht wie ich das ohne timer programmiere.
  Mit Zitat antworten Zitat
Knotti2005

Registriert seit: 10. Nov 2005
275 Beiträge
 
#2

Re: Blinkendes Label

  Alt 31. Dez 2005, 18:08
Üwrd dir gerne Helfen aber nen Timer brauchste schon es gab mal ne Komponente die das hatte aber ich ... weis leider nichtmehr woher ich sie hatte....


Ich habe immer viele Ideen.
Meine Ideen = Dinge die die Welt nicht braucht
  Mit Zitat antworten Zitat
Ratte

Registriert seit: 12. Dez 2003
Ort: Erfurt
345 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Blinkendes Label

  Alt 31. Dez 2005, 18:12
So eine Kompo ist bei den JEDIs dabei. Was spricht denn gegen einen Timer?

Ratte
Schiffsratte der U.S.S. Delphipraxis, Laderaum 4538
BUSH:= TTerminator.create;
  Mit Zitat antworten Zitat
PierreB
(Gast)

n/a Beiträge
 
#4

Re: Blinkendes Label

  Alt 31. Dez 2005, 18:16
Zitat von Ratte:
Was spricht denn gegen einen Timer?
Das System würde somit ständig belastet werden und sollte es noch weitere Timer geben wird das Programm träg und langsam (bissl übertrieben, aber egal).
  Mit Zitat antworten Zitat
Benutzerbild von konda
konda

Registriert seit: 20. Dez 2005
253 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Blinkendes Label

  Alt 1. Jan 2006, 12:38
Zitat von Ratte:
So eine Kompo ist bei den JEDIs dabei. Was spricht denn gegen einen Timer?

Ratte
wie soll ich den den timer in meiner komponenetenunit benutzen?
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Blinkendes Label

  Alt 1. Jan 2006, 13:03
Zitat von konda:
...wie soll ich den den timer in meiner komponenetenunit benutzen?
Hai konda,

ich habe mal schnell diese Klasse getippt. Eventuell ist da ja ein Denkanstoss für dich dabei
Delphi-Quellcode:
unit ShBlinkLabel;

interface

uses
  StdCtrls, ExtCtrls, Classes;

type
  TShBlinkLabel = class(TLabel)
  private
    fTimer: TTimer;
    fIntervall: integer;
    fAktiv: boolean;
  protected
    procedure OnTimer(Sender: TObject);
    procedure SetAktiv(aValue: boolean);
    procedure SetIntervall(aValue: integer);
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    property Intervall: integer Read fIntervall Write SetIntervall;
    property Aktiv: boolean Read fAktiv Write SetAktiv;
  published

  end;

implementation

{ TShBlinkLabel }

constructor TShBlinkLabel.Create;
begin
  inherited;
  fAktiv := False;
  fTimer := TTimer.Create(self);
  fTimer.OnTimer := OnTimer;
  fTimer.Interval := 500;
  fTimer.Enabled := fAktiv;
end;

destructor TShBlinkLabel.Destroy;
begin
  fTimer.Free;
  inherited;
end;

procedure TShBlinkLabel.OnTimer(Sender: TObject);
begin
  Visible := not (Visible)
end;

procedure TShBlinkLabel.SetAktiv(aValue: boolean);
begin
  fAktiv := aValue;
  fTimer.Enabled := aValue;
end;

procedure TShBlinkLabel.SetIntervall(aValue: integer);
begin
  fTimer.Enabled := False;
  fTimer.Interval := aValue;
  fTimer.Enabled := True;
end;

end.
Edit: Kleinen Fehler beseitigt
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#7

Re: Blinkendes Label

  Alt 1. Jan 2006, 13:04
Variable in der Labelklasse

timer1:ttimer; und dann im overloaded label.create der Unit

timer1:=ttimer.create(label1); //edit: mist, sharkky war schneller
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat
Benutzerbild von ManuMF
ManuMF

Registriert seit: 11. Jul 2005
1.016 Beiträge
 
Delphi 6 Personal
 
#8

Re: Blinkendes Label

  Alt 1. Jan 2006, 13:20
Hallo,

Delphi-Quellcode:
procedure TShBlinkLabel.SetAktiv(aValue: boolean);
begin
  fAktiv := aValue;
  fTimer.Enabled := aValue;
  if not (aValue) then
    Visible := true;
end;
Die beiden Zeilen sollten noch hinzugefügt werden, damit das Label nicht unsichtbar bleibt, wenn es in diesem Moment gerade "ausgeschaltet" wird.

Gruß,
ManuMF
Gruß,
ManuMF

Endlich hab ich was Positives an Vista entdeckt: Das mitgelieferte Mahjongg
  Mit Zitat antworten Zitat
Benutzerbild von Mystic
Mystic

Registriert seit: 18. Okt 2003
Ort: Flerzheim
420 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Blinkendes Label

  Alt 1. Jan 2006, 13:21
fIntervall wird nie gesetzt? Mir scheint, Sharky hat nicht viel geschlafen.

Delphi-Quellcode:
constructor TShBlinkLabel.Create;
begin
  inherited;
  fAktiv := False;
  fIntervall := 500;
  fTimer := TTimer.Create(self);
  fTimer.OnTimer := OnTimer;
  fTimer.Interval := 500;
  fTimer.Enabled := fAktiv;
end;

{ ... }

procedure TShBlinkLabel.SetIntervall(aValue: integer);
begin
  fTimer.Enabled := False;
  fTimer.Interval := aValue;
  fTimer.Enabled := True;
  fIntervall := aValue;
end;
Jan Steffens
Der Fachwortgenerator - 100% Schwachsinn --- Der UPnP Router Manager - Kommentare erwünscht!
  Mit Zitat antworten Zitat
Benutzerbild von konda
konda

Registriert seit: 20. Dez 2005
253 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Blinkendes Label

  Alt 1. Jan 2006, 15:08
das ist alles einleuchtend, nur leider schaff ich es zurzeit nicht er zu testen. ich schaff es zwar die komponente zu installieren aber dann finde ich sie nicht mehr.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz