Komponenten Samlng für Lazarus.
-
- Lazarusforum e. V.
- Beiträge: 7180
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Komponenten Samlng für Lazarus.
Hallo,
ich möchte hier meine eigene Komponenten samlung vorstellen.
Zum Runterladen gibt es noch nix, da ich erst noch weitere Komponenten hinzufügen wollte.
Geplant sind folgende:
01 - Playlisten
02 - MediaPlayer(wie in Delphi), basieren auf XINE
03 - Favoriten Liste
04 - FileComboBox
05 - DirComboBox
06 - Link Label
TPLFileListBox
Da die Lazarus Eigene "File Listbox" nicht richtig geht, habe ich eine eigene geschrieben.
Die FileListBox stellt zuerst Verzeichnisse, dann Dateien dar.
Es kann gefilter werden, welche Datei Typen angezeigt werden sollen.
Die TPLFileListBox ist von der normalen ListBox Komponenten abgeleitet, die leider einige BUGS aufweis.
Mir Bekannte bug bei der FileListBox:
Wenn mit Enter das verzeichniss geändert werden soll kommt aus welchen grund auch immer eine
AV.
Die TPLFileListBox, kann mit einer TPLFileEdit und einem Label Komponenten verbunden werden.
TPLDirectoryListBox
Die TPLDirectoryListBox ist von der TPLFileListBox abgeleitet und stlelt nur Verzeichnisse dar.
Wird die FileListBox eigenschaft zugeweisen wird in der zugewisenden Komponente nur noch Dateien angezeigt.
TPLFileEdit
Wenn die TPLFileEdit mit einer TPLDirectoryListBox verbunden ist, kann ein verzeichnis eingeben werden,
dann enter drücken. Wenn sie mit einer TPLFileListBox verbunden ist passiert da das gleiche,
Hier kann man auch Datei Masken in der Form: *.zip*.rar eingeben werden.
.* es werden nur Dateien angezeigt *. nur Verzeichnise.
TPLExtList
Von der Combobox abgeleitet Komponente, welche mit einer TPLFileListBox verbunden werden kann/sollte.
Der Zweck sollte eigentlich klar sein. Im Moment kann man noch nicht im OI die einträge hinzufügen.
Das muss über die Procedure AddExt(const aExt, aValue:String); passieren.
TPlFileTree
Die TPLFileTree stellt wie der Name schon sagt alles in einem Baum dar und zwar in einer TreeView.
Im Packte sind im Moment folgende Komponenten drin:
01 - TPLBrushStyleComboBox
02 - TPLBrushStyleListBox
03 - TPLColorComboBox
04 - TPlColorFehld
05 - TPlColorListBox
06 - TPLDirectoryListBox
07 - TPLFontComboBox
08 - TPLFontListBox
09 - TPLPenStyleListBox
10 - TPLFileListBox
11 - TPLFileEdit
12 - TPLExtList
13 - TPLDirectoryListBox
14 - TPLFileTree(nutzt intern eine Treeview)
Leider sind die ICONS noch sehr einfach. Da ich keine lust hatte mir welche aus dem Internet oder sonwo zu suchen.
Habe ich sehr eifnach selbst gemacht. Die aber eigentlich nicht passend sind.
Alle 13 Komponenten haben ICONS.
Wenn ihr noch wünsche oder Vorschläge habt nur her damit.
Evlt. füge ich später noch einige Screenshots ein mal sehen
Edit01: Samstag den 19.April.2008
Lizenz weiß ich jetzt im Moment nicht, die Komponenten sind auf jeden Fall Freeware und dürfen frei verändert werden. Aber der Header sollte nicht gelöscht oder geändert werden.
Wenn ihr die Komponenten ICONS seht wiest ihr was ich meine *G*
Ich hoffe das ich alle Dateien beisammen habe, die Option Projekt veröffentlichen habe ich einige male zwar verwendet aber einmal leider falsch so wurden mein Projekt Verzeichnis gelöscht. Warum die Funktion einen nicht vorwarnt weiß ich allerdings nicht. Also gibt niemals das Projekt Verzeichnis an wenn ihr keine Backups habt.
Das Verzeichnis sollte leer sein !
Edit02: Sontag den 20.April.2008
[highlight=red]Hineweis[/highlight]
Ich weiß nicht ob die Datei Komponenten auch unter Windows Gehen.
Ich habe jetzt ein beispiel Projekt hinzugefügt und zwei Bilder
Edit03: Mittwoch den 12.Juni.2008
Habe jetzt ein neue File Komponente hinzugefügt. Die FileBar. Die ist auch schon fast fertig*freu*
Die Filebar habe ich mir bei "Windows Vista" abgeschaut die Idee gefiel mir eigentlich recht gut.
Somit habe ich gestern mit der Entwicklung angefangen. In einigen Tagen kann ich sie evlt. schon hochladen.
Als nächstes möchte ich mein FileEdit erweitert bzw. eine FileCombobox erstellen.
Wenn ich z.b. bei irgendeinen Datei Manger unter Linux ein Verzeichnis eingebe und eine Zeitlang warte popup doch so eine Liste auf mit allen möglichen Einträgen. Sowas möchte ich auch erstellen. Das Prinzip ist eigentlich recht einfach glaube ich.
Ich werden meine Komponenten Sammlung in den Nächsten Tagen updaten. Ein Ziel ist es auch noch die Icons zu ändern und eine passende Beschreibungen zu den einzelnen Komponenten zu erstellen. Mal sehen womit und wie ich das machen werde.
ich möchte hier meine eigene Komponenten samlung vorstellen.
Zum Runterladen gibt es noch nix, da ich erst noch weitere Komponenten hinzufügen wollte.
Geplant sind folgende:
01 - Playlisten
02 - MediaPlayer(wie in Delphi), basieren auf XINE
03 - Favoriten Liste
04 - FileComboBox
05 - DirComboBox
06 - Link Label
TPLFileListBox
Da die Lazarus Eigene "File Listbox" nicht richtig geht, habe ich eine eigene geschrieben.
Die FileListBox stellt zuerst Verzeichnisse, dann Dateien dar.
Es kann gefilter werden, welche Datei Typen angezeigt werden sollen.
Die TPLFileListBox ist von der normalen ListBox Komponenten abgeleitet, die leider einige BUGS aufweis.
Mir Bekannte bug bei der FileListBox:
Wenn mit Enter das verzeichniss geändert werden soll kommt aus welchen grund auch immer eine
AV.
Die TPLFileListBox, kann mit einer TPLFileEdit und einem Label Komponenten verbunden werden.
TPLDirectoryListBox
Die TPLDirectoryListBox ist von der TPLFileListBox abgeleitet und stlelt nur Verzeichnisse dar.
Wird die FileListBox eigenschaft zugeweisen wird in der zugewisenden Komponente nur noch Dateien angezeigt.
TPLFileEdit
Wenn die TPLFileEdit mit einer TPLDirectoryListBox verbunden ist, kann ein verzeichnis eingeben werden,
dann enter drücken. Wenn sie mit einer TPLFileListBox verbunden ist passiert da das gleiche,
Hier kann man auch Datei Masken in der Form: *.zip*.rar eingeben werden.
.* es werden nur Dateien angezeigt *. nur Verzeichnise.
TPLExtList
Von der Combobox abgeleitet Komponente, welche mit einer TPLFileListBox verbunden werden kann/sollte.
Der Zweck sollte eigentlich klar sein. Im Moment kann man noch nicht im OI die einträge hinzufügen.
Das muss über die Procedure AddExt(const aExt, aValue:String); passieren.
TPlFileTree
Die TPLFileTree stellt wie der Name schon sagt alles in einem Baum dar und zwar in einer TreeView.
Im Packte sind im Moment folgende Komponenten drin:
01 - TPLBrushStyleComboBox
02 - TPLBrushStyleListBox
03 - TPLColorComboBox
04 - TPlColorFehld
05 - TPlColorListBox
06 - TPLDirectoryListBox
07 - TPLFontComboBox
08 - TPLFontListBox
09 - TPLPenStyleListBox
10 - TPLFileListBox
11 - TPLFileEdit
12 - TPLExtList
13 - TPLDirectoryListBox
14 - TPLFileTree(nutzt intern eine Treeview)
Leider sind die ICONS noch sehr einfach. Da ich keine lust hatte mir welche aus dem Internet oder sonwo zu suchen.
Habe ich sehr eifnach selbst gemacht. Die aber eigentlich nicht passend sind.
Alle 13 Komponenten haben ICONS.
Wenn ihr noch wünsche oder Vorschläge habt nur her damit.
Evlt. füge ich später noch einige Screenshots ein mal sehen
Edit01: Samstag den 19.April.2008
Lizenz weiß ich jetzt im Moment nicht, die Komponenten sind auf jeden Fall Freeware und dürfen frei verändert werden. Aber der Header sollte nicht gelöscht oder geändert werden.
Wenn ihr die Komponenten ICONS seht wiest ihr was ich meine *G*
Ich hoffe das ich alle Dateien beisammen habe, die Option Projekt veröffentlichen habe ich einige male zwar verwendet aber einmal leider falsch so wurden mein Projekt Verzeichnis gelöscht. Warum die Funktion einen nicht vorwarnt weiß ich allerdings nicht. Also gibt niemals das Projekt Verzeichnis an wenn ihr keine Backups habt.
Das Verzeichnis sollte leer sein !
Edit02: Sontag den 20.April.2008
[highlight=red]Hineweis[/highlight]
Ich weiß nicht ob die Datei Komponenten auch unter Windows Gehen.
Ich habe jetzt ein beispiel Projekt hinzugefügt und zwei Bilder
Edit03: Mittwoch den 12.Juni.2008
Habe jetzt ein neue File Komponente hinzugefügt. Die FileBar. Die ist auch schon fast fertig*freu*
Die Filebar habe ich mir bei "Windows Vista" abgeschaut die Idee gefiel mir eigentlich recht gut.
Somit habe ich gestern mit der Entwicklung angefangen. In einigen Tagen kann ich sie evlt. schon hochladen.
Als nächstes möchte ich mein FileEdit erweitert bzw. eine FileCombobox erstellen.
Wenn ich z.b. bei irgendeinen Datei Manger unter Linux ein Verzeichnis eingebe und eine Zeitlang warte popup doch so eine Liste auf mit allen möglichen Einträgen. Sowas möchte ich auch erstellen. Das Prinzip ist eigentlich recht einfach glaube ich.
Ich werden meine Komponenten Sammlung in den Nächsten Tagen updaten. Ein Ziel ist es auch noch die Icons zu ändern und eine passende Beschreibungen zu den einzelnen Komponenten zu erstellen. Mal sehen womit und wie ich das machen werde.
- Dateianhänge
-
- DemoPlutoKomponent.zip
- Version 0.0 Alpha
- (13.66 KiB) 138-mal heruntergeladen
-
- Plutoskomponenten.zip
- (30.67 KiB) 189-mal heruntergeladen
Zuletzt geändert von pluto am Do 12. Jun 2008, 13:38, insgesamt 7-mal geändert.
MFG
Michael Springwald
Michael Springwald
-
- Lazarusforum e. V.
- Beiträge: 7180
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Eigentlich währe die Sammlung jetzt soweit das ich sie veröffentlichen könnte. Aber die
ICONS sind noch mist. Wenn mir jemand evlt. für die einzelnen Komponenten ICONS vorschlagen könntet. Währe das toll.
Weil die Komponenten sind zwar noch nicht 100% Fertig z.b. die Lezte die TPLFileTree aber
sie können schon genutzt werden.
ICONS sind noch mist. Wenn mir jemand evlt. für die einzelnen Komponenten ICONS vorschlagen könntet. Währe das toll.
Weil die Komponenten sind zwar noch nicht 100% Fertig z.b. die Lezte die TPLFileTree aber
sie können schon genutzt werden.
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 423
- Registriert: Di 5. Feb 2008, 12:45
- OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
- CPU-Target: 64Bit
- Kontaktdaten:
TPLColorComboBox coooooool so was suche ich schon lange.
PS: Icons sind zwar schön, aber nicht soooo wichtig
Wenn die Kompos funktionieren, dann nur her damit.
PPS: Unter welcher Lizenz eigentlich?
Kann man sie auch in Freeware verwenden?
PPPS: Was für Abhängigkeiten haben die Kompos?
PS: Icons sind zwar schön, aber nicht soooo wichtig
Wenn die Kompos funktionieren, dann nur her damit.
PPS: Unter welcher Lizenz eigentlich?
Kann man sie auch in Freeware verwenden?
PPPS: Was für Abhängigkeiten haben die Kompos?
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu
www.alexanderroth.eu
-
- Beiträge: 423
- Registriert: Di 5. Feb 2008, 12:45
- OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
- CPU-Target: 64Bit
- Kontaktdaten:
Ehmmm ich meine eine Listbox/Combobox, die normale Einträge hat nur farbig...theo hat geschrieben:alexander hat geschrieben:TPLColorComboBox coooooool so was suche ich schon lange.
Wo suchst du denn?
Lazarus hat eine TColorBox im Additional Tab und ein TColorButton in Misc.
Oder meinst du was anderes?
Ich hoffe pluto meint so etwas und nicht noch eine FarbauswahlBox
Vielleicht ist es auch die TPLPenStyleListBox....
Pluto? Ist die Komponente dabei die ich meine?
Zuletzt geändert von alexander am Sa 19. Apr 2008, 19:42, insgesamt 1-mal geändert.
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu
www.alexanderroth.eu
-
- Lazarusforum e. V.
- Beiträge: 7180
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Stimmt eine ColorBox gibt es schon allerdings nur mit den Standard Farben und den System Farben meine hingegen nutzt die Farben aus meiner Unit das sind über 600. Gut! ich werde die Komponenten mal hochladen.
Und was die Abhängigkeiten angeht ich denke da sollte es keine geben. Da alle Komponenten auf Standard Komponenten Basieren.
Besonders Toll finde ich die Datei Verwaltung Komponenten. Im Moment Listen sie halt nur Einträge auf also Datei und oder Verzeichnisse. Darunter finde ich die Möglichkeit diese zu Filtern praktisch und vorallem die TPLFileTree die ist aber noch nicht fertig.
Das Packet besteht aus zwei PAS Dateien und eine LPK Datei und natürlich eine lrz Datei....
Edit: Die Sammlung ist hochgeladen.
Und was die Abhängigkeiten angeht ich denke da sollte es keine geben. Da alle Komponenten auf Standard Komponenten Basieren.
Besonders Toll finde ich die Datei Verwaltung Komponenten. Im Moment Listen sie halt nur Einträge auf also Datei und oder Verzeichnisse. Darunter finde ich die Möglichkeit diese zu Filtern praktisch und vorallem die TPLFileTree die ist aber noch nicht fertig.
Das Packet besteht aus zwei PAS Dateien und eine LPK Datei und natürlich eine lrz Datei....
Edit: Die Sammlung ist hochgeladen.
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 423
- Registriert: Di 5. Feb 2008, 12:45
- OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
- CPU-Target: 64Bit
- Kontaktdaten:
directoryseparator ist die constante dafür. Selbst erst vor kurzem entdeckt... Ich nehme einfach mal an, dass Lazarus diese variable Plattformabhängig umstellt. Sonst wäre sie ja sinnlos...pluto hat geschrieben:Und kannst du sie Installieren ? unter Windows gehen die noch nicht. weil ich / verwende und nicht \ bzw. das könnte ich ja mit einer Variable machen.
Ja installieren kann ich sie, klappen auch... nur es ist halt die Listbox mit farbigen Einträgen nicht dabei, die suche.... Deshalb bingen sie mir nicht allzuviel (noch nicht). Aber wenn ich eine Kompo suche, weiß ich ja wo ich nachschauen kann.
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu
www.alexanderroth.eu
-
- Beiträge: 423
- Registriert: Di 5. Feb 2008, 12:45
- OS, Lazarus, FPC: Linux, Lazarus svn, FPC svn
- CPU-Target: 64Bit
- Kontaktdaten:
hmmm macht es es plattformunabhängig?pluto hat geschrieben:Ja die kenne ich directoryseparator.
Was für ein Beispiel programm?pluto hat geschrieben:Die Listbox sollte dabei sein: TPLColorListBox. Läuft denn bei dir auch das Beispiel Programm ?
hmmm die TPLColorListBox zeigt doch aber farben, oder? Soll jedenfalls, denn sie zeigt immer nur die obere an. (siehe screenshot) (genauso zur laufzeit)
Ich suche aber:
d.h. farbige schrift. Und Keine fraben auswählen.Ehmmm ich meine eine Listbox/Combobox, die normale Einträge hat nur farbig...
- Dateianhänge
-
- Bildschirmfoto.png (6.1 KiB) 3295 mal betrachtet
Du magst Freiheit? Gönne es auch deinem Computer mit Linux!
www.alexanderroth.eu
www.alexanderroth.eu
Kommt darauf an, woran du die unterschiedlichen Farben festmachst.
Zeichnet bspw. abwechselnd unterschiedliche Hintergrundfarben.
Hierzu stellst du den Style der List-/ComboBox auf csOwnerDrawFixed und
rufst im DrawItem-Ereignis die Procedure auf
Kannst dir natürlich auch eine eigene Combo ableiten und einbauen.
Code: Alles auswählen
procedure ColorList(aCanvas: TCanvas; aColor, eColor: TColor; Index: integer;
State: TownerDrawState; aRect: TRect; aEntry: string);
var
l, t: integer;
c: TColor;
begin
t := aRect.Top;
t := t + ((aRect.Bottom - t - aCanvas.TextHeight('Qq')) SHR 1);
l := aRect.Left + 2;
if not (odSelected in State) then begin
if odd(Index) then c := aColor else c := eColor;
aCanvas.Brush.Color := c;
aCanvas.Brush.Style := bsSolid;
end;
aCanvas.FillRect(aRect);
aCanvas.Brush.Style := bsClear;
aCanvas.TextRect(aRect, l, t, aEntry);
end;
Zeichnet bspw. abwechselnd unterschiedliche Hintergrundfarben.
Hierzu stellst du den Style der List-/ComboBox auf csOwnerDrawFixed und
rufst im DrawItem-Ereignis die Procedure auf
Code: Alles auswählen
ColorList(TListBox(Control).Canvas, FAltColor, TListBox(Control).Color, Index,
State, ARect, TListBox(Control).Items[Index]);
Kannst dir natürlich auch eine eigene Combo ableiten und einbauen.