Was ist aus der "ThumbListGadget" Lib geworden...
- Ghosty1967
- Beiträge: 205
- Registriert: 29.08.2005 13:56
- Computerausstattung: Intel i7, 128GB Ram, Win10 Ultimate, PB6.00 Alpha 3
- Wohnort: Köln
Was ist aus der "ThumbListGadget" Lib geworden...
Hallo zusammen...
ich stricke mir gerade ein kleines Programm um diverse Metadaten zu Bildern abzuspeichern. Da habe ich von
der "ThumbListGadget" Lib hier im Forum gelesen. Allerdings sind sämtliche links die ich hier und im Netz finden
konnte tot. Weiß jemand, ob diese Lib noch existiert und wo man die evtl. downloaden kann.
Oder gibt es vielleicht eine andere Möglichkeit Miniaturansichten wie in Picasa, XNView o.ä anzeigen zu lassen,
die einer von euch schon einmal zusammengebastelt hat und mir evtl. zur Verfügung stellen würde
__________________________________________________
Thread verschoben
Ankündigungen>Projekte, Ressourcen, Tools
06.04.2018
RSBasic
ich stricke mir gerade ein kleines Programm um diverse Metadaten zu Bildern abzuspeichern. Da habe ich von
der "ThumbListGadget" Lib hier im Forum gelesen. Allerdings sind sämtliche links die ich hier und im Netz finden
konnte tot. Weiß jemand, ob diese Lib noch existiert und wo man die evtl. downloaden kann.
Oder gibt es vielleicht eine andere Möglichkeit Miniaturansichten wie in Picasa, XNView o.ä anzeigen zu lassen,
die einer von euch schon einmal zusammengebastelt hat und mir evtl. zur Verfügung stellen würde
__________________________________________________
Thread verschoben
Ankündigungen>Projekte, Ressourcen, Tools
06.04.2018
RSBasic
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Wie der Zufall so will, hab ich doch letzt erst im englischen Forum drüber gelesen....
http://www.purebasic.fr/english/viewtop ... 12&t=70295
Wenn es sowas ist.... Aber da ging es definitiv um Thumbnails.
http://www.purebasic.fr/english/viewtop ... 12&t=70295
Wenn es sowas ist.... Aber da ging es definitiv um Thumbnails.
PureBasic 6.10 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom
- Ghosty1967
- Beiträge: 205
- Registriert: 29.08.2005 13:56
- Computerausstattung: Intel i7, 128GB Ram, Win10 Ultimate, PB6.00 Alpha 3
- Wohnort: Köln
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Hmm, geht in die richtige Richtung.Allerdings nicht so gaaaannnz das, was ich mir vorstelle. Ich habe mal eben schnell was
zusammengestrickt, was wohl am besten zeigt, was ich mir so vorstelle. Ich lese in dem Beispiel alleBilddateien des ausgewählten
Verzeichnis in eine Datenliste ein und generiere zu jeder Datei ein "Icon" zur Darstellung im ListIconGadget.
Ich komme aber irgendwie nicht so richtig mit dem Handling der ImageListe klar. Warum muss ich erst ein 0tes-Elementn hinzufügen,
damit alle Bilddateien angezeigt werden und wie kann ich die Liste zurücksetzen, wenn ich ein neues Verzeichnis auswähle.
Schaut euch doch den Beispielcode einfach mal an, aber bitte... der ist echt heiß gestrickt, haut mich nicht zu sehr
zusammengestrickt, was wohl am besten zeigt, was ich mir so vorstelle. Ich lese in dem Beispiel alleBilddateien des ausgewählten
Verzeichnis in eine Datenliste ein und generiere zu jeder Datei ein "Icon" zur Darstellung im ListIconGadget.
Ich komme aber irgendwie nicht so richtig mit dem Handling der ImageListe klar. Warum muss ich erst ein 0tes-Elementn hinzufügen,
damit alle Bilddateien angezeigt werden und wie kann ich die Liste zurücksetzen, wenn ich ein neues Verzeichnis auswähle.
Schaut euch doch den Beispielcode einfach mal an, aber bitte... der ist echt heiß gestrickt, haut mich nicht zu sehr
Code: Alles auswählen
UseJPEG2000ImageDecoder()
UseJPEGImageDecoder()
UseTIFFImageDecoder()
UseGIFImageDecoder()
UsePNGImageDecoder()
UseTGAImageDecoder()
Enumeration 0
#WIN_INTERFACE
#LST_PREVIEW
#TRE_FILELIST
#CON_LISTINFO: #TXT_LISTINFO
EndEnumeration
Enumeration 1000
#TEMPIMAGE
#FNT_ARIAL
EndEnumeration
;Struktur für die eingelesenen Daten erstellen (erstmal nur Dateiname, später mehr)
Structure ContentStruct
FILE.s
EndStructure
;Datenliste und globale Variablen erstellen
Global NewList CONTENT.ContentStruct()
Global imgList.l
;Ein "Dummy-Image" für die Imagelist (Element 0) erstellen (Keine Ahnung warum das nötig ist)
If CreateImage(0, 156, 156, 32)
If StartDrawing(ImageOutput(0))
StopDrawing()
EndIf
EndIf
Procedure CreateThumbnail(usrImage.l, file.s)
;Bilddatei öffnen, Daten einlesen und Grafik für die Anzeige im ListIconGadget erstellen
If LoadImage(#TEMPIMAGE, file)
Debug "Lese Bilddaten von " + file
imgW.l = ImageWidth (#TEMPIMAGE)
imgH.l = ImageHeight(#TEMPIMAGE)
imgN.s = GetFilePart(file)
imgD.s = Str(imgW) + "x" + Str(imgH) + " - " + Str(FileSize(file)/1024) + "kB"
imgT.s = FormatDate("%dd.%mm.%yyyy %hh:%ii:%ss", GetFileDate(file, #PB_Date_Modified))
;Neue Bildgrößen berechen
If imgW > imgH
relWH.f = imgH / imgW: newW = 120: newH = 120 * relWH
ElseIf imgH > imgW
relWH.f = imgW / imgH: newH = 96: newW = 96 * relWH
ElseIf imgW = imgH
newH = 120: newW = 120
EndIf
If CreateImage(usrImage, 156, 156, 32, $EAEAEA)
If StartDrawing(ImageOutput(usrImage))
DrawingFont(FontID(#FNT_ARIAL))
Box( 14, 4, 128, 104, $FFFFFF)
Box( 0, 111, 156, 54, $CAEDED)
DrawText((156 - TextWidth(imgN)) / 2, 112, imgN, $0, $CAEDED)
DrawText((156 - TextWidth(imgD)) / 2, 126, imgD, $0, $CAEDED)
DrawText((156 - TextWidth(imgD)) / 2, 140, imgT, $0, $CAEDED)
DrawingMode(#PB_2DDrawing_Outlined)
Box( 0, 0, 156, 156, $ACACAC)
Box( 14, 4, 128, 104, $B7B7B7)
DrawImage(ImageID(#TEMPIMAGE), 15 + ((126 - newW) / 2), 8 + ((96 - newH) / 2), newW, newH)
StopDrawing()
EndIf
EndIf
ImageList_Add_(imgList, ImageID(usrImage), 0)
FreeImage(#TEMPIMAGE)
EndIf
EndProcedure
Procedure ReadDirectoryEntries(usrPath.s)
;Alle Bilddateien im ausgewählten Verzeichnis auslesen und in der Datenliste speichern
;usrPath.s = GetGadgetText(#TRE_FILELIST)
pattern.s = "gif|jpeg|jpg|tga|tif|tiff|bmp|png"
Protected dir = ExamineDirectory(#PB_Any, usrPath, "*.*")
If dir
ClearList(CONTENT())
While NextDirectoryEntry(dir)
If DirectoryEntryType(dir) = #PB_DirectoryEntry_File
filename.s = usrPath + DirectoryEntryName(dir)
If FindString(LCase(pattern), LCase(GetExtensionPart(filename))) > 0
AddElement(CONTENT())
CONTENT()\FILE = filename
EndIf
EndIf
Wend
EndIf
EndProcedure
Procedure RefillListicon()
;ListIconGadget mit den Grafiken aus der Imageliste befüllen
If CountGadgetItems(#LST_PREVIEW) > 0
;Ist das Gadget bereits gefüllt, den Inhalt löschen und die Imageliste leeren
ImageList_Destroy_(imgList)
ClearGadgetItems(#LST_PREVIEW)
EndIf
imgList = ImageList_Create_(156, 156, #ILC_COLOR32|#ILC_MASK, 0, 20)
;Wenn ein 0tes Bild in die Imageliste eingefügt wird, funktioniert alles...
;ImageList_Add_(imgList, ImageID(0), 0)
;ansonsten fehlt immer das erste Element der Liste in der Anzeige
ForEach CONTENT()
CreateThumbnail(ListIndex(CONTENT()), CONTENT()\FILE)
Next
For i = 1 To ListSize(CONTENT()) - 1
AddGadgetItem(#LST_PREVIEW , -1, "", ImageID(i))
Next
oldIL = SendMessage_(GadgetID(#LST_PREVIEW), #LVM_GETIMAGELIST, #LVSIL_NORMAL, 0)
SendMessage_(GadgetID(#LST_PREVIEW), #LVM_SETIMAGELIST, #LVSIL_NORMAL, imgList)
ImageList_Destroy_(oldIL)
SendMessage_(GadgetID(#LST_PREVIEW), #LVM_SETICONSPACING, 0, 155 * 65536 + 155)
EndProcedure
If OpenWindow(#WIN_INTERFACE, 0, 0, 950, 700, "", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
LoadFont(#FNT_ARIAL, "Arial", 8)
;GUI erstellen...
ListIconGadget (#LST_PREVIEW , 299, 25, 646, 474, "", 200, #PB_ListIcon_MultiSelect)
TextGadget (#PB_Any , 5, 5, 100, 14, "Verzeichnis")
ExplorerTreeGadget(#TRE_FILELIST, 5, 25, 289, 474, "", #PB_Explorer_AlwaysShowSelection|#PB_Explorer_NoFiles|#PB_Explorer_AutoSort)
SetGadgetAttribute(#LST_PREVIEW , #PB_ListIcon_DisplayMode, #PB_ListIcon_LargeIcon)
;Events abfragen...
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #PB_Event_Gadget
Select EventGadget()
Case #TRE_FILELIST
;Bei einem Verzeichniswechsel, alle Daten einlesen... funktioniert nur beim ersten mal (WARUM?)
If EventType() = #PB_EventType_LeftClick
ReadDirectoryEntries(GetGadgetText(#TRE_FILELIST))
If ListSize(CONTENT()) > 0
RefillListicon()
EndIf
EndIf
EndSelect
EndSelect
Until EventID = #PB_Event_CloseWindow
EndIf
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Bei mir wird jede Kleinigkeit sofort von RSBasic geändert/korrigiert (nicht immer zum besten) und dieser Thread ist seit Tagen im Unterforum "Ankündigungen".
Muss ich das verstehen?
Muss ich das verstehen?
Barcodes for PureBasic - http://micha122.bplaced.net/
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Ich versuche immer, die Bearbeitungszeit (<5s) gering wie möglich zu halten.Micha122 hat geschrieben:Bei mir wird jede Kleinigkeit sofort von RSBasic geändert/korrigiert (nicht immer zum besten)
Ich habe den Thread jetzt verschoben.Micha122 hat geschrieben:dieser Thread ist seit Tagen im Unterforum "Ankündigungen".
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Verschoben ist schon mal gut, aber die Wahl des Unterforums ist doch etwas fragwürdig.Thread verschoben
Ankündigungen>Offtopic
06.04.2018
RSBasic
Barcodes for PureBasic - http://micha122.bplaced.net/
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Ich war mir nicht sicher, ob Allgemein oder Offtopic. Da das keine spezielle Frage zur Programmierung mit PB ist, sondern nur über die Verfügbarkeit einer Library, habe ich deshalb in Offtopic verschoben. Dort können auch allgemeine PB-Fragen gestellt werden.
Oder hast du einen anderen Vorschlag?
Oder hast du einen anderen Vorschlag?
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Wie wäre es mit: Projekte, Ressourcen, Tools
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Ja, das klingt besser.
- Ghosty1967
- Beiträge: 205
- Registriert: 29.08.2005 13:56
- Computerausstattung: Intel i7, 128GB Ram, Win10 Ultimate, PB6.00 Alpha 3
- Wohnort: Köln
Re: Was ist aus der "ThumbListGadget" Lib geworden...
Sorry für die Arbeit...weiss auch nicht warum die Frage da gelandet ist.
Werde in Zukunft besser aufpassen!!!
Werde in Zukunft besser aufpassen!!!