_ListView_HTMLprint dient zur Darstellung von Tabellen und Generierung einer Druckvorschau die optimal auf die Seitenbreite formatiert ist und im Hoch- oder Querformat ausgegeben werden kann. Auch das Einrichten der Kompletten Seite vor dem Ausdruck ist möglich.
_ListView_HTMLprint
#region - TimeStamp
; 2011-05-06 11:08:15
#endregion - TimeStamp
#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GUIListView.au3>
Global $titel = "_ListView_HTMLprint"
_Example()
Func _Example()
Local $GUI, $ListView, $Columns = 12
$GUI = GUICreate($titel, 400, 300)
$ListView = _GUICtrlListView_Create($GUI, "", 2, 2, 394, 268)
GUISetState(@SW_SHOW)
For $A = 0 To $Columns - 1
_GUICtrlListView_InsertColumn($ListView, $A, "Überschrift " & $A + 1, 50)
Next
For $A = 0 To 99
_GUICtrlListView_AddItem($ListView, Chr(Random(65, 90)) & " - Zeile " & $A + 1 & ": Spalte 1", $A)
For $B = 1 To $Columns
_GUICtrlListView_AddSubItem($ListView, $A, "Zeile " & $A + 1 & ": Spalte " & $B + 1, $B)
Next
Next
MsgBox(262144 + 64, "Information", "Hoch- oder Querformat in der Druckvorschau wählen !" _
& @TAB & @CRLF & "(Browser-Menü => Datei => Druckvorschau ... )" & @CRLF & @CRLF & _
'Die Komplette Seite einrichten in "Seite einrichten" !' & @CRLF & "(Browser-Menü => Datei => Seite einrichten ... )")
Local $PrintOut = _ListView_HTMLprint($ListView, @ScriptDir & "\ListView_HTMLprint.html")
ShellExecuteWait($PrintOut)
FileDelete($PrintOut)
EndFunc ;==>_Example
; #_ListView_HTMLprint# =========================================================================================================
; Hinweis........: Die Funktion "_GUICtrlListView_PrintOut", im englischen Forum kann nicht mit dt. Umlauten umgehen und
; reagiert auch nicht auf das Hoch- oder Querformat. Die Funktion "_GUICtrlListView_PrintOut" wurde von mir angepasst!
; Title .........: _ListView_HTMLprint
; AutoIt Version : v3.2.12.1 oder höher
; Language ......: Deutsch
; Description ...: ListView-Inhalte als HTML-Datei speichern und ausdrucken.
; Note ..........: Ein Ausdruck in Hoch- oder Querformat und das Einrichten der Kompletten Seite ist möglich
; Author(s) .....: Ritzelrocker04
; Remarks .......:
; ===============================================================================================================================
Func _ListView_HTMLprint($hListView, $hFileName)
Local $HTMLBody, $HTMLBody_End, $Index, $HTMLColumns, $aColumn
Local $iItemCount = _GUICtrlListView_GetItemCount($hListView)
Local $iColumnCount = _GUICtrlListView_GetColumnCount($hListView)
$HTMLColumns = '<table border="1" width="100%">' & @CRLF & _ ; ListView Columns
'<colgroup span="' & $iColumnCount & '"></colgroup>' & @CRLF & '<tr>' & @CRLF
For $A = 0 To $iColumnCount - 1
$aColumn = _GUICtrlListView_GetColumn($hListView, $A)
$HTMLColumns &= @TAB & '<th>' & $aColumn[5] & '</th>' & @CRLF
Next
$HTMLColumns &= '</tr>' & @CRLF
For $A = 0 To $iItemCount - 1 ; ListView Items.
$Index = _GUICtrlListView_GetItemText($hListView, $A)
If $iColumnCount > 0 Then
For $B = 1 To $iColumnCount - 1
$HTMLBody_End &= @TAB & '<td>' & _GUICtrlListView_GetItemText($hListView, $A, $B) & '</td>' & @CRLF
Next
Else
$HTMLBody_End = @CRLF & '</tr>' & @CRLF
EndIf
$HTMLBody &= '<tr>' & @CRLF & _
@TAB & '<td>' & $Index & '</td>' & @CRLF & _
$HTMLBody_End & @CRLF & _
'</tr>' & @CRLF
$HTMLBody_End = ""
Next
Local $HTMLHeader = '<html>' & @CRLF & '<head>' & @CRLF & _
'<title>' & $titel & ' - Druckansicht' & '</title>' & @CRLF & _
'</head>' & @CRLF & @CRLF & '<body>' & @CRLF & _
'<h3>' & $titel & '</h3>' & @CRLF
Local $HTMLFooter = '</table>' & @CRLF & '</body>' & @CRLF & '</html>'
[/autoit] [autoit][/autoit] [autoit]Local $hFileOpen = FileOpen($hFileName, 2)
FileWrite($hFileOpen, $HTMLHeader & $HTMLColumns & $HTMLBody & $HTMLFooter)
FileClose($hFileOpen)
If Not @error Then Return $hFileName
Return SetError(1, 1, $hFileName)
EndFunc ;==>_ListView_HTMLprint
; Ende
Danke für die bisherigen 57 downloads.
Viel Spaß wünscht Ritzelrocker04!