AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

externe Icon-Library

Ein Thema von ThomasWB · begonnen am 10. Okt 2019 · letzter Beitrag vom 10. Okt 2019
Antwort Antwort
Seite 1 von 2  1 2   
ThomasWB

Registriert seit: 21. Jun 2015
33 Beiträge
 
#1

externe Icon-Library

  Alt 10. Okt 2019, 09:01
Hallo zusammen,
ich möchte in einem Programm in verschiednden Komponeten Icons aus einer TImageList. Nun soll der Anwender die Möglichkeit haben, weiter Icons zu verwenden - sprich nachzuladen. Dazu müsste ich die Icons in einer separaten Datei gespeichert haben und beim Programmstart in die TImageList zu laden. Im Prinzip könnte ich die Icons über eine Ressourcen-Datei "verwalten". Bisher waren alle Erklärungen davon ausgegangen, dass eine Ressourcedaeti beim Compilieren in die EXE-Datei eingebunden wird. Nur benötige ich im Prinzip eine exteren Ressourcendatei, die dann vom Prgramm zur Laufzeit erweitert wird. Die Icons können nicht in die XEX selber eingebunden werden, da bei einem Programm-Update die vom Anwender geladenen Icons nicht überschreiben werden dürfen.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.275 Beiträge
 
Delphi 12 Athens
 
#2

AW: externe Icon-Library

  Alt 10. Okt 2019, 09:17
Moin...
Folgende Möglichkeiten bieten sich an:

1: Bilder in Datenbank (binär) ablegen -> ImageList.Add
2: Bilder in Datenbank (Pfad) ablegen -> Bild laden -> ImageList.Add
3: Bilder in Pfad ablegen -> Bild laden -> ImageList.Add
4. externe "Ressourcen" Datei (CSV) -> Bild laden -> ImageList.Add
...und viele andere mehr. Viele Wege führen nach Rom. Aber grundsätzlich müssen die externen "Ressourcen" separat abgelegt werden.

Du siehst, die Anforderung ist nicht eindeutig. Du muß dich entscheiden.

Geändert von haentschman (10. Okt 2019 um 09:31 Uhr)
  Mit Zitat antworten Zitat
ThomasWB

Registriert seit: 21. Jun 2015
33 Beiträge
 
#3

AW: externe Icon-Library

  Alt 10. Okt 2019, 09:28
Die Lösungen 2-4 gehen davon aus, dass ich die Icons "irgendwo" separat liegen habe und sie über eine "Steuerdatei" lade. Die Lösung 1 kommt meinem Ansinnen schon nahe. Nur dachte ich, dass dies ohne DB geht über EINE externe Datei, die dann alle Icons hält - ählich einer ICL-Datei
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.091 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: externe Icon-Library

  Alt 10. Okt 2019, 09:35
Ich würde alles so lassen wie es ist und eine zweite ImageList für "benutzerdefiniert" nehmen. Da kann der Benutzer alles reinladen wie er will. Wenn du dich drum kümmerst dass der ImageIndex immer der richtige ist wo etwas hingepackt wird kannst du auf deiner TActionList (oder was auch immer die ImageList verwendet) einfach mit einer Zeile Code von deiner normalen auf die "custom" ImageList umschalten und nun hat alles die benutzerdefinierten Icons.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.275 Beiträge
 
Delphi 12 Athens
 
#5

AW: externe Icon-Library

  Alt 10. Okt 2019, 09:36
Zitat:
dass ich die Icons "irgendwo" separat liegen habe
...was spricht dagegen? Der User muß die Datei eh laden. Dann eine Kopie in in einen dafür vorgesehenden Ordner speichern. Ohne DB: Du kannst auch einen Binären Stream in eine XML Datei speichern/laden.
  Mit Zitat antworten Zitat
ThomasWB

Registriert seit: 21. Jun 2015
33 Beiträge
 
#6

AW: externe Icon-Library

  Alt 10. Okt 2019, 09:40
zu Günther:
Wenn der Benutzer die Icons in eine zweite ImageList lädt, sind die Daten mit dem Programm verbunden. Bei einem Update des Programms würden diese Icons dann verloren gehen - oder sehe ich das falsch.
  Mit Zitat antworten Zitat
ThomasWB

Registriert seit: 21. Jun 2015
33 Beiträge
 
#7

AW: externe Icon-Library

  Alt 10. Okt 2019, 09:43
Hallo haentschman,
wie geht das speichern in einer XML-Datei. Ich würde die Lösung einer Datei bevorzugen anstatt hier evtl. 30 Dateien zu haben. Ist irgenwie "aufgeräumter" .
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.275 Beiträge
 
Delphi 12 Athens
 
#8

AW: externe Icon-Library

  Alt 10. Okt 2019, 10:07
Lesestoff:
https://www.delphipraxis.net/52533-b...speichern.html
https://www.google.de/search?source=...4dUDCAc&uact=5
Zitat:
oder sehe ich das falsch.
Ja, aber mit 2 Imagelisten bekommst du die Probleme wenn du die Origialen und die Benutzerdefinierten in einem Grid z.B. benötigst. Die meisten Controls kennen nur eine Imagelist.

Geändert von haentschman (10. Okt 2019 um 10:10 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.091 Beiträge
 
Delphi 10 Seattle Enterprise
 
#9

AW: externe Icon-Library

  Alt 10. Okt 2019, 10:08
Nein, deine Anwendung (.exe-Datei) wird zur Laufzeit (also während es beim Benutzer im Einsatz ist) nie verändert. Deine Anwendung kann diese Dateien sich selbst wohin kopieren. Entweder 1:1 die .ico/.png-Dateien. Oder eine Datenbank. Oder eine ZIP-Datei.

Irgendwie haben wir mehrere Fragen auf einmal. Geht es darum wie man neue Icons in eine ImageList bekommt? Oder wie du die vom Benutzer (z.B. mit ein "Datei öffnen"-Dialog) ausgewählten Dateien dir wegspeicherst um sie in Zukunft immer wieder verwenden zu können?
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.172 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: externe Icon-Library

  Alt 10. Okt 2019, 10:08
Verstehe ich richtig:
Dein Anwender stellt selber Icons zusammen + mag die in deine EXE laden. Du magst die Icons nicht einzeln haben, sondern lieber in einer Datei. Da würde ich eine Icon-Library nehmen und von dort die Icons extrahieren.

https://icofx.ro/
http://delphi.cjcsoft.net/viewthread.php?tid=44498
https://stackoverflow.com/questions/...-from-binaries
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 12:26 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