Hallo Leute,
kennt jemand eine Möglichkeit in einem Listview folgendes anzuzeigen.
TEXT | TEXT | TEXT | ein img als Bild
oder hat jemand eine Altanatieve.
Die Datensätze kommen aus einer mysql Tabele und die Bilder liegen im Filesystem.
gruss Anro
Hallo Leute,
kennt jemand eine Möglichkeit in einem Listview folgendes anzuzeigen.
TEXT | TEXT | TEXT | ein img als Bild
oder hat jemand eine Altanatieve.
Die Datensätze kommen aus einer mysql Tabele und die Bilder liegen im Filesystem.
gruss Anro
Hmm...muss das Bild in die vierte Spalte?
Einem Listview kann man eine ImageList zuweisen, aber dann ist das Bild in der ersten Spalte.
nein kann auch in die erste Spate des is egal
und wie geht das mit dem ImageList
Ich stelle die Frage mal anders wie kann ich den ImageList in ein Listview einbauen das aus einem MYSQL Select befüllt wird ( auch der Bildname kommt aus der datenbank ).
Es gibt ein Beispiel in der AutoIt Hilfe zur ImageList und wie sie mit Bitmaps gefüllt wird, schau es dir doch mal an.
Einem Listview kann man eine ImageList zuweisen, aber dann ist das Bild in der ersten Spalte.
Nein, nicht nur in der ersten Spalte...
Ja das habe ich mir natürlich angeschaut nur leider steht da nix mit Datensätze aus ner datenbank und leider bekomme ich es nicht hin.
Hab schon alles mögliche getestet aber ich krieg es nicht gebacken sonst würde ich nicht fragen.
Die Hilfe zeigt dir wie man Bilder einfügt, sie bietet dir nicht für jeden einzelnen Anwendungsfall ein Beispiel wie man es lösen kann, dafür bist du selbst zuständig.
Wenn du die Datensätze aus der Datenbank abfragen kannst, dann hast du sie auch im Script in einer Variable oder in einem Array gespeichert, also lies einfach besagte Variable oder Array aus und füge es mit dem entsprechenden Bild in die ListView ein.
Nein, nicht nur in der ersten Spalte...
Da bin ich gerade am Beispiel basteln und dann kommst Du mit dem Beispiel.
Das kannte ich auch noch nicht. Wird gleich mal archiviert. Klasse!
Bitnugger: Deine Funktion kann man noch etwas erweitern, um auch Bilder aus dem Speicher laden zu können:
Func _GUIImageList_AddImage($hImageList, $sImage, $iX, $iY)
Local $hImage, $hResImage, $a_hBitmap[2], $iIndex
; Create 32 bits-per-pixel bitmap from a PNG image
If IsBinary($sImage) Then
$hImage = _GDIPlus_BitmapCreateFromMemory($sImage)
Else
$hImage = _GDIPlus_ImageLoadFromFile($sImage)
EndIf
If @error Then Return SetError(@error, 0, -1)
$hResImage = _GDIPlus_ImageResize($hImage, $iX, $iY)
$a_hBitmap[0] = _GDIPlus_BitmapCreateDIBFromBitmap($hResImage)
$a_hBitmap[1] = _WinAPI_CreateANDBitmap($a_hBitmap[0])
$iIndex = _GUIImageList_AddMasked($hImageList, $a_hBitmap[0], $a_hBitmap[1])
;~ $iImg = _GUIImageList_Add($g_hImageList, $a_hBitmap[0], $a_hBitmap[1])
_GDIPlus_ImageDispose($hResImage)
_GDIPlus_ImageDispose($hImage)
_WinAPI_DeleteObject($a_hBitmap[0])
_WinAPI_DeleteObject($a_hBitmap[1])
Return $iIndex
EndFunc ;==>_GUIImageList_AddImage
Alles anzeigen
Als Beispiel (mit PNG im Speicher) würde das dann so aussehen:
;-- TIME_STAMP 2017-10-07 15:02:37 v 0.1
#Region ;************ Includes ************
#include <GUIConstantsEx.au3>
;~ #include <WindowsConstants.au3>
#include <GuiImageList.au3>
#include <GuiListView.au3>
#include <GDIPlus.au3>
;~ #include <WinAPI.au3>
#EndRegion ;************ Includes ************
Global $g_hImageList
_GDIPlus_Startup()
Example()
_GDIPlus_Shutdown()
Func Example()
Local $idListview, $iStylesEx = BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES)
GUICreate("ImageList Add", 400, 486)
$idListview = GUICtrlCreateListView("", 2, 2, 394, 484, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))
_GUICtrlListView_SetExtendedListViewStyle($idListview, $iStylesEx)
GUISetState(@SW_SHOW)
; Load images
Local $iX = 64, $iY = 64
;~ Local $iX = 32, $iY = 32
;~ Local $iX = 16, $iY = 16
$g_hImageList = _GUIImageList_Create($iX, $iY, 5)
_GUIImageList_Add($g_hImageList, _GUICtrlListView_CreateSolidBitMap($idListview, 0xFF0000, $iX, $iY))
_GUIImageList_Add($g_hImageList, _GUICtrlListView_CreateSolidBitMap($idListview, 0x00FF00, $iX, $iY))
_GUIImageList_Add($g_hImageList, _GUICtrlListView_CreateSolidBitMap($idListview, 0x0000FF, $iX, $iY))
_GUIImageList_AddImage($g_hImageList, _date(), $iX, $iY)
_GUIImageList_AddImage($g_hImageList, @ScriptDir & '\note.png', $iX, $iY)
_GUIImageList_AddImage($g_hImageList, @ScriptDir & '\note.gif', $iX, $iY)
_GUIImageList_AddImage($g_hImageList, @ScriptDir & '\Andere_Sorgen.jpg', $iX, $iY)
_GUICtrlListView_SetImageList($idListview, $g_hImageList, 1)
; Add columns
_GUICtrlListView_AddColumn($idListview, "Items", 120)
_GUICtrlListView_AddColumn($idListview, "SubItems", 150)
_GUICtrlListView_AddColumn($idListview, "Comment", 120)
Local $aComment = ['SolidBitMap', 'SolidBitMap', 'SolidBitMap', 'MEMORY', 'PNG', 'GIF', 'JPG']
For $i = 0 To 6 Step 1
; Add items
_GUICtrlListView_AddItem($idListview, "Item " & $i, $i)
; Add subitems
_GUICtrlListView_AddSubItem($idListview, $i, "SubItem " & $i, 1, $i)
_GUICtrlListView_AddSubItem($idListview, $i, $aComment[$i], 2, -1)
Next
; Loop until the user exits.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>Example
Func _GUIImageList_AddImage($hImageList, $sImage, $iX, $iY)
Local $hImage, $hResImage, $a_hBitmap[2], $iIndex
; Create 32 bits-per-pixel bitmap from a PNG image
If IsBinary($sImage) Then
$hImage = _GDIPlus_BitmapCreateFromMemory($sImage)
Else
$hImage = _GDIPlus_ImageLoadFromFile($sImage)
EndIf
If @error Then Return SetError(@error, 0, -1)
$hResImage = _GDIPlus_ImageResize($hImage, $iX, $iY)
$a_hBitmap[0] = _GDIPlus_BitmapCreateDIBFromBitmap($hResImage)
$a_hBitmap[1] = _WinAPI_CreateANDBitmap($a_hBitmap[0])
$iIndex = _GUIImageList_AddMasked($hImageList, $a_hBitmap[0], $a_hBitmap[1])
;~ $iImg = _GUIImageList_Add($g_hImageList, $a_hBitmap[0], $a_hBitmap[1])
_GDIPlus_ImageDispose($hResImage)
_GDIPlus_ImageDispose($hImage)
_WinAPI_DeleteObject($a_hBitmap[0])
_WinAPI_DeleteObject($a_hBitmap[1])
Return $iIndex
EndFunc ;==>_GUIImageList_AddImage
;Code below was generated by: 'File to Base64 String' Code Generator v1.20 Build 2015-09-19
Func _date($bSaveBinary = False, $sSavePath = @ScriptDir)
Local $date
$date &= 'iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAbVUlEQVR42uVbaXhV1bl+195nzACEeUgIYpBJhgKidbhqtYNtnRFbH2/TxzoxBMEDWhRxQBlqHBEFpyLV2tbWViAOt2AdqqBCEAiYBEFQZEqADCcnOdPe91vT3vsEyLHX2+f+uOchnHP2sPZa73q/9xvWOgz/z1/s2zZw15I/jE0mU9cerT/46c7PNq9Y85cV9gmeY/+rbZ/odcfiP/VMWGxaLNoU21OzdXHFikeb/08AKLv7YX//gYMOBv2+gsMNTfjriqW/2rL+H8//bw30RK95i5f/rVu3bpfWNcXx9n+9/tK29Wv/s37fnv8RwN8KgKXz5+QXnTuhKRzwY0vtbjzz6MIl2z55f+q/G4DnXnpl3agRp56x+bOdeLVizeZU9ZrT3/q4Kv5vA2Dnoqu7MNOYSJd/j8EuITKHYduIGSHjq7MiQ/JzAvi0ejcOvvvy4Z/1aTroS6aRjqdhBAz4c8OA6YNh+MAMZQmMgZkmfTekYYhe0Gf6blv8Ej2Z9MWmY3ZafIRh01c/tvW7cMCAYaNzNlbVYvMn69uu7bp7V49OYTAr3ZJqS9TaYGtMv+/PRWXPRr8VADsemGhSD2bBSs+2E4lOdjoFO52mr3SjyZCmQX15ySIU5IawqWY3Wt95ET8KHqCBQQyWX8fHzHwGDL9B9/jEAK20zTFQgADyC/3ZTNwgQZBA0De6jv8pwOhf7ZAJ6D9iHCq31eKLTeswMVCDUICuTPH+2fQsH8xQ+LDNjLtp4p4smvqM/S8DUPvAVTk02FettrYfipGInls0s0nqhEmzaxIAQey7fBE654SwbedXaHp7BS6094hmOUCM99a0YQZ9YsbTKQtWis7ygXGQTH7cEIOXk848sw9xvy2+c2akBGCMrt0z5ucoJAC2VH+OPZs+xE8TnyLIQaa2mBiSJRlGpunLyXmFTlxbOGlp4hsDsOPBa5idtv6ajjZfaiWSYvC2mHYDFtGbP4TPaooAOPrzh5EfIhMgBrS8+3tcYH6lBu9pnZl81JLmfJbFcaKz+G6J2eafmUDFFhgI8Jj4IAflkIVh32nXoujUsdhYVYO9Wz/CRfGNCAd8giGM388ZZpqibc4cf0Hn5/vdvOxX3xiA6gcmlKZbY8vTLa2wSFpim2NEAkvYoaQtJyaxwR8AFj+PAB3btnMvGl5ZjjN2VauGGTdfMluW6f/ULAoIxOB1FzggDEwhZ1uWBMCy9Wm61BaTEJ8aQeHp47GJTODLjz7EaWsrqA+mtCJhNky0xjXFGNsNxYN72ywYvLjv9UsqsgLw2fyJvJmaVHN0EGjQ6ZY0jq49JGirO6HmF+lAANHFTyLk86F69z4c/eMKnFtb7QibHJLuP5P6J2bRFpomOmDL/yzb7YpBI7EsqRPymZl9bJk5C31PH4eqml2off99nPPmagQ4e8SDmGSRuvnI6K4YN7I3/J3z1xdNfe67WQHYdv/E0enW1k3pWEzMgt0KNL9bL22Rubfx7zVkc62RXyNAorNnfz0+fvUl3NncDD8BZ+tp41SGJShuCN446EhvoM4ydZipMdi2PMPvZ/wKJpkUp1ndOPFqlIwYgZ17D+GDD9bhsk//iUHwK/ORzGOWBOHIdwiAYd3hy8u1zXC4uGjy0191CMDWuVdcl4g2P5duaxP0s+IMresaCAxbg6tus/CHliY0X3QZOhd0Qywex8aVL2JWMA/9eQ/EcPmlkua+rl1JPxIwfH7hScirwOjcGanDh+Hv1ROJ/fvh794D6WhUiK3ZpQvidIwxJYxicAaqrQRWDR6O4d8Zh4Y2C5+tW4vz9u3CBf58x9SY+j9N5tb4nW4YP6o3eYUQjFDokqJJS1d1CMCWuZdHUtFoeSqekMIfsxBb3yA64RVqTtMNyVY823gAnfqehJaGw8iJHsa8PoMRTFquDjAxvxj0cDmi27YhPGAAEnX1aKmqQuG0qaidUoaR'
$date &= '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'
$date &= '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'
$date &= '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'
$date &= '+b5WfBUreHaL60KonDlRwyAbdsNZpt2s2A3urkg5iZinLN9eQH3BAOoOHEAt5R+KK6Uv1WQBYOLJ3SZTV5bw3qRSFgYP7IMRg/oJPfDx3IBTkG5LUUQmgxTXDRoetyi2vuit7kyuBlu23EIr0mDLcgWP/hcVJ8NQ9UaIKE4VEQRI4nq63zT9Ms9Iy42bQW7rTMciMgrkQU+MBHPd5mrs/PJrMRlKU696qbbuz9kAuICOruGKm+JxgN8UnSrq0w19enRBPl9lVQueejacWN0pnTN3FYe+py35GxhRxFA7SZkYNN+GxoEwHAYZMqmA/u0H1EKMCJFUW7baSkWcEN5BpsmSQQ3RFuw9eBh799c5mqsnhi4a/fva+s3ZAAgTNQ+mbZbPxcn0yaIlH7QlBMl2Ul5R1dG/I9AFcUMOP5mWA+FLCEliUorXFogI/DjfXs/TaC1YGjj+zv23UzAVA7ZlTsH7ohZP9Q8jOJh8dvl+A25OgnliAUfmGvw4g54U7KdGC39fW2d1CIDUgYLHqYNlnAV84DK1lPtv+cYpwwn+JcsdJeaHDUnheCJNHWai01xAtTWI5TYCgLPKti31p2dJdlrvDNMvQw3YFKDZSl8IZHKTXC/8xFLerlizTbvnRQ1TDZMO3fNybd29x2jt8QC4uqRbD0K9Kp5M9/SpHJupjYxpCkcNFbtaakBa6kQnyAY5HRO8c/x3O3wWU0n1ixBbBC9BHtE5G6wtlU3KH0bwtFaCwtQKlOstBAvFBBjiOJ8M/uKMgsouef+4WcjrTJ12f0FtjPzDjvroNwKAv34xpMe5xIA3/KYRNvgvspRQ8QeIn8SpaIgPiM8073CSBuP3mWJAPDHhdOadTfHymhI5PmuSAfI5vD1ZZFEAcAbwX6fRA3jQwwiMtJpVAYBleVakbHGfoUyEt5nkmzqofdFPmb430u3n/6760KbjjfOEAAgQSrqdHQ6YfyQa9+UP5XbMt85xaqXlj73EA/0+KXbca/j8Prm8ZSm9oE4nk9IEOFWFWflMJydIqQEJALgdmzLQ4VGgj0d5dlq0y00wwKmethxT4UzjwHAzEP0SfUiTcPuU8Bq7qK0Jz1Qd2HSiMXYIAH9NHdm7i89gs0zDvJ4A6ClcGT2UC5ufqBZPpsSA+aA46qY/IIQopcSBd5CnqxIAn2SAz6fs3BId1QBAuDmfyPpstTlK2L24NCnugxJOUwAgFTHgMwSwpjABEtmAby8BsYzAfeSpLQdaOhpfVgD0a+bYQpPoPpKSmBJ6aFgIC3WC599JbQbcNfEfSHKBsqAUWNJcdJqfs+Qg1TKonFEFgKGWyjh7tBAKHeFaIUxHbbtRQqiDMR608RomPa+FnlNLB6serfza/ibj+m99IpUT4HaExQAAAABJRU5ErkJggg=='
Local $bString = _WinAPI_Base64Decode($date)
If @error Then Return SetError(1, 0, 0)
$bString = Binary($bString)
If $bSaveBinary Then
Local Const $hFile = FileOpen($sSavePath & "\date.png", 18)
If @error Then Return SetError(2, 0, $bString)
FileWrite($hFile, $bString)
FileClose($hFile)
EndIf
Return $bString
EndFunc ;==>_date
Func _WinAPI_Base64Decode($sB64String)
Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0)
If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "")
Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]")
$aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0)
If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "")
Return DllStructGetData($bBuffer, 1)
EndFunc ;==>_WinAPI_Base64Decode
Alles anzeigen
Gute Idee Oscar
Vielen Dank euch beiden
Hier noch ein wenig erweitert...
Deine Funktion kann man noch etwas erweitern, um auch Bilder aus dem Speicher laden zu können
Ahhh... super Idee!
Servus
was für eine GDIPlus.au3 verwendet Ihr da ich keiner die ich im Internet finde die Functionen die hier verwendet werden enthalten sind
oder könntet Ihr die bereitstellen. Danke
Die Datei gehört zum Standardpaket von AutoIt. Nutzt du nicht die volle Installationsversion?
Klick mal einen der betreffenden Funktionsnamen an und drücke strg+j. Damit solltest du zu der Funktion in deinem Include-Verzeichnis springen. .\AutoIt3\Include\GDIPlus.au3
Edit: Oder benutzt du eine sehr alte AutoIt-Version?
Meine Version ist eigentlich Aktuell das ich habe diese Function nicht und wenn ich mir die Aktuelle GDIPlus.au3 besorge gibt es diese Function auch nicht.
Diese Funktionen sind auch nicht Bestandteil der aktuellen GDIPlus.au3! Wenn ich mich nicht irre, stammen die aus einer älteren Version und womöglich gibt es in der aktuellen Version auch alternative Funktionen, welche in dem Fall dann wohl auch vorzugsweise genommen werden sollten... insofern man denn weiß, wie... doch ich bin ja in Sachen GDI ein echtes Greenhorn!
Ich habe die aktuelle AutoIt-Version (inkl. der Beta) installiert, mit der auch die von mir verwendete GDIPlus.au3 mitbringt.
@AutoItVersion = 3.3.14.2
c:\Program Files (x86)\AutoIt3\Include\GDIPlus.au3 280.482 17.09.2015 11:50 ra--
https://www.autoitscript.com/site/autoit/downloads/
Ich habe allerdings eine... angestaubte "GDI+" (für AutoIt Version: 3.3.6.1) gefunden, in der diese Funktionen in leicht geänderter From enthalten sind:
https://www.autoitscript.com/forum/topic/106021-gdipau3/
Was mich noch nervt, dass ich die Transparenz bei *.BMP noch nicht (ohne Umwege) hin bekomme... aber einen guten Ansatz habe ich bereits:
_GDIPlus_ImageAttributesSetRemapTable()
Nenn die fehlende Funktion bitte mal beim Namen.
Edit: Gerade erst deinen Beitrag gelesen Bitnugger. Da verstehe ich nur nicht, dass ich überhaupt keine Probleme beim ausführen habe.
Da verstehe ich nur nicht, dass ich überhaupt keine Probleme beim ausführen habe.
Ist doch klare Sache... weil du eben dieselbe GDIPlus.au3 installiert hast, wie ich... und alle anderen Funktionen befinden sich im Script!
Hallo leider brauch ich immer noch eure Hilfe ich Checks leider nicht.
Ich habe folgende Situation
; MYSQL starten, DLL im PATH (enthält auch @ScriptDir), sont Pfad zur DLL angeben. DLL muss libmysql.dll heißen.
$query = "SELECT * FROM item where klasse = 'Structure'"
_MySQL_Real_Query($MysqlConn, $query)
$res = _MySQL_Store_Result($MysqlConn)
$fields = "7";_MySQL_Num_Fields($res)
$rows = _MySQL_Num_Rows($res)
;MsgBox(0, "Anzahl Rows und Fields", $rows & "-" & $fields)
if $rows <> 0 Then
Dim $array[$rows][$fields]
For $k = 1 To $rows
$mysqlrow = _MySQL_Fetch_Row($res,$fields)
$lenthsStruct = _MySQL_Fetch_Lengths($res)
For $i = 1 To $fields
$length = DllStructGetData($lenthsStruct, 1, $i)
$fieldPtr = DllStructGetData($mysqlrow, 1, $i)
$data = DllStructGetData(DllStructCreate("char[" & $length & "]", $fieldPtr), 1)
$array[$k - 1][$i - 1] = $data
Next
Next
_GUICtrlListView_SetImageList($Haupt_ListView1, $g_hImageList, 1)
; Add columns
_GUICtrlListView_AddColumn($Haupt_ListView1, "Items", 120)
_GUICtrlListView_AddColumn($Haupt_ListView1, "SubItems", 150)
_GUICtrlListView_AddColumn($Haupt_ListView1, "test1", 210)
_GUICtrlListView_AddColumn($Haupt_ListView1, "test", 210)
_GUICtrlListView_AddColumn($Haupt_ListView1, "Bild", 210)
_GUICtrlListView_SetImageList($Haupt_ListView1, $g_hImageList, 1)
For $i = 0 To UBound($array) - 1
; Add items
_GUICtrlListView_AddColumn($Haupt_ListView1, $array[$i][1], 120)
_GUICtrlListView_AddColumn($Haupt_ListView1, $array[$i][2], 150)
_GUICtrlListView_AddColumn($Haupt_ListView1, $array[$i][3], 210)
_GUICtrlListView_AddColumn($Haupt_ListView1, $array[$i][4], 210)
_GUIImageList_AddImage($g_hImageList, @ScriptDir & '\image\' $ $array[$i][5], $iX, $iY)
Next
EndIf
_MySQL_Free_Result($res)
Alles anzeigen
wie muss ich das Aufbauen das in der ersten oder letzten Spalte das Image angezeigt wird.
Wie gesagt alle Infos kommen aus einen mysql Datenbank auch der Name des Bildes das angezeigt werden soll.
Wahrscheinlich bin ich nur blind oder hab einen falschen Denkansatz
gruss Arno