LED Status

Zur Vorstellung von Komponenten und Units für Lazarus
Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6209
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

LED Status

Beitrag von af0815 »

TLEDStatusRound
TLEDStatusSquare

Ist eine runde/quadratische LED-Anzeige
Die LED hat die Möglichkeit insgesamt drei Zustände anzunehmen
Siehe auch in der Typedefinition. Sie ist speziell für die Signalisierung von
Zuständen von Maschinen angepasst, denn dort kann der Zustand eine mehrwertige
Logik sein - Ausgeschaltet, Maschinenstillstand, Maschinenlauf - oder auch
Produktzustände - Nicht vorhanden, Schlechtes Produkt, Gutes Produkt - sein.

Is a round/square LED control
The LED can have three levels. Look for the typedefinition. The LED is
specially for signalling states in automation an there the logic can be have
more levels - desactivated, machine stop, machine run - or states of a
product - no available, bad product, good product
[hr]
Die Komponente befindet sich im Downloadbereich: downloads.php?view=detail&id=2

Author: af0815
Lizenz: LGPL
Version: 0.1.2.0
Plattform: Windows (XP Prof. tested), Linux (not tested yet)
[hr]
Bitte um Anregungen, Wünsche und Beschwerden
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

alexander
Beiträge: 423
Registriert: Di 5. Feb 2008, 12:45
OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von alexander »

hmmm ich nutze Ubuntu 64 und wenn ich kompilieren will kommt:
/media/hdc5/Programme/Programmierung/Lazarus Komponenten/LED_status0.1.2.0/led_status.pas(152,14) Error: No member is provided to access property
/media/hdc5/Programme/Programmierung/Lazarus Komponenten/LED_status0.1.2.0/led_status.pas(168,16) Error: No member is provided to access property
/media/hdc5/Programme/Programmierung/Lazarus Komponenten/LED_status0.1.2.0/led_status.pas(446) Fatal: There were 2 errors compiling module, stopping

anscheinend versuchst zu autosizing zu setzten obwohl es readonly ist:

Code: Alles auswählen

property AutoSizing: Boolean Read FAutoSizing;


Ich verstehe nicht wieso das unter Windows klappen soll.... Hast du vielleicht eine neuere Version?
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6209
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

alexander hat geschrieben:hmmm ich nutze Ubuntu 64 und wenn ich kompilieren will kommt:
....
Ich verstehe nicht wieso das unter Windows klappen soll.... Hast du vielleicht eine neuere Version?


Ganz einfach, diese Komponente ist NICHT für 64 Bit entwickelt worden (nur XP prof. tested). Ausserdem kann sein, das sich einige Eigenschaften der LCL geändert haben.

Ich habe dzt. keinen 64 Bit Lazarus für Tests zur Verfügung. Werde aber mal sehen was sich da machen lässt.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

alexander
Beiträge: 423
Registriert: Di 5. Feb 2008, 12:45
OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von alexander »

af0815 hat geschrieben:
alexander hat geschrieben:hmmm ich nutze Ubuntu 64 und wenn ich kompilieren will kommt:
....
Ich verstehe nicht wieso das unter Windows klappen soll.... Hast du vielleicht eine neuere Version?


Ganz einfach, diese Komponente ist NICHT für 64 Bit entwickelt worden (nur XP prof. tested). Ausserdem kann sein, das sich einige Eigenschaften der LCL geändert haben.

Ich habe dzt. keinen 64 Bit Lazarus für Tests zur Verfügung. Werde aber mal sehen was sich da machen lässt.
also Lazarus ist ja so super, weil man alles plattformunabhängig schreiben kann. D.h. nur in Notfällen Betriebsystemspezifische Befehle benutzen.... (d.h. kein bitbtln, etc...)
Und macht 64bit bei der Programmierung überhaupt einen Unterschied?

Ach ja und eine ReadonlyVariable zu schreiben ist wohl eher auch nicht vom Betriebsystem abhängig ;-)
Das kann doch garnicht bei dir fehlerfrei kompiliert werden. Egal welches Betriebsystem.... Oder, kannst du es kompilieren?

Gruß Alexander
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

af0815 hat geschrieben:Ganz einfach, diese Komponente ist NICHT für 64 Bit entwickelt worden (nur XP prof. tested). Ausserdem kann sein, das sich einige Eigenschaften der LCL geändert haben.


Das geht auch nicht auf 32bit.
Du hast wohl an deiner LCL rumgeschraubt, falls das bei dir kompiliert.
Ausser dem Autosizing Problem, hat deine "Spezial"-LCL wohl noch ein "Canvas.Color" Property (Canvas.Color := parent.Color;) Das haben wir Normal-sterblichen auch nicht ;-)

alexander
Beiträge: 423
Registriert: Di 5. Feb 2008, 12:45
OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von alexander »

theo hat geschrieben:Du hast wohl an deiner LCL rumgeschraubt, falls das bei dir kompiliert.

Das denke ich auch.
Und das ist nicht gerade das praktischste dieser Welt, weil, dann kein Mensch deine Kompos verwenden kann. Ebenso keiner eines deiner Programme kompilieren kann. ;-)

Ach ja und die Programmierer von Freepascal und Lazarus sind uns "Normalsterblichen" in der Abstaktion der Programmierung doch so enorm voraus, dass eigentlich alles was programmiert wurde auch einen guten Grund hat. Deshalb sollte man prinzipell nicht an der LCL rumschrauben.
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

alexander hat geschrieben:Ach ja und die Programmierer von Freepascal und Lazarus sind uns "Normalsterblichen" in der Abstaktion der Programmierung doch so enorm voraus, dass eigentlich alles was programmiert wurde auch einen guten Grund hat. Deshalb sollte man prinzipell nicht an der LCL rumschrauben.


Das sehe ich nicht ganz so. Schliesslich sollten wir eigentlich alle Lazarus (LCL) Programmierer sein ;-)
Aber man sollte den offiziellen Weg beschreiten und einen Patch einreichen bzw. die Änderung begründen können.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6209
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

alexander hat geschrieben:
theo hat geschrieben:Du hast wohl an deiner LCL rumgeschraubt, falls das bei dir kompiliert.

Das denke ich auch.
Und das ist nicht gerade das praktischste dieser Welt, weil, dann kein Mensch deine Kompos verwenden kann. Ebenso keiner eines deiner Programme kompilieren kann. ;-)

Ach ja und die Programmierer von Freepascal und Lazarus sind uns "Normalsterblichen" in der Abstaktion der Programmierung doch so enorm voraus, dass eigentlich alles was programmiert wurde auch einen guten Grund hat. Deshalb sollte man prinzipell nicht an der LCL rumschrauben.

Nur zur Info, es wurde zur damaligen Zeit nur eine SVN Version von Lazarus verwendet OHNE Modifikationen. Wozu auch an der LCL herumschrauben.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

alexander
Beiträge: 423
Registriert: Di 5. Feb 2008, 12:45
OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von alexander »

Dann ist es aber unmöglich dass du das Projekt kompilieren kannst, oder konntest, wegen den von uns angesprochenen Problemen....
Probiere es doch einfach nochmal aus....
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

@af0815 Aber sag uns doch mal eins:
Hat deine LCL z.B. ein Canvas.Color Property?
Das habe ich noch nie gesehen.
Welche SVN Rev wäre denn das (gewesen)?

alexander
Beiträge: 423
Registriert: Di 5. Feb 2008, 12:45
OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von alexander »

theo hat geschrieben:@af0815 Aber sag uns doch mal eins:
Hat deine LCL z.B. ein Canvas.Color Property?
Das habe ich noch nie gesehen.
Welche SVN Rev wäre denn das (gewesen)?

Ich verstehe nicht was du meinst: in TCanvas

Code: Alles auswählen

property Brush: TBrush read FBrush write SetLazBrush;
    property Color: TColor read GetColor write SetColor;
    property CopyMode: TCopyMode read FCopyMode write FCopyMode default cmSrcCopy;
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

alexander hat geschrieben:Ich verstehe nicht was du meinst: in TCanvas

Code: Alles auswählen

property Brush: TBrush read FBrush write SetLazBrush;
    property Color: TColor read GetColor write SetColor;
    property CopyMode: TCopyMode read FCopyMode write FCopyMode default cmSrcCopy;


Echt? Dann wurde das gestrichen.
Bei mir SVN 14640 sehe ich das nicht und in Delphi gab's das auch nicht (afair).

Code: Alles auswählen

TCanvas = class(TFPCustomCanvas)
.....
.....
published
    property AutoRedraw: BOOLEAN READ FAutoRedraw WRITE SetAutoRedraw;
    property Brush: TBrush READ FBrush WRITE SetLazBrush;
    property CopyMode: TCopyMode READ FCopyMode WRITE FCopyMode DEFAULT cmSrcCopy;
    property Font: TFont READ FFont WRITE SetLazFont;
    property Height : integer READ GetHeight;
    property Pen: TPen READ FPen WRITE SetLazPen;
    property Region: TRegion READ FRegion WRITE SetRegion;
    property Width : integer READ GetWidth;
    property OnChange: TNotifyEvent READ FOnChange WRITE FOnChange;
    property OnChanging: TNotifyEvent READ FOnChanging WRITE FOnChanging;
  end;

alexander
Beiträge: 423
Registriert: Di 5. Feb 2008, 12:45
OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von alexander »

und wie wird die hintergrundfarbe festgelegt?
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Canvas.Brush Color

Zeichenfarbe: Canvas.Pen.Color

alexander
Beiträge: 423
Registriert: Di 5. Feb 2008, 12:45
OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von alexander »

hmm irgendwie logisch.....
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu

Antworten