[R] Autoit & CSS
Posté : mar. 05 janv. 2016 14:33
par Hugues
Bonjour,
Je voudrais faire un treeview en css dans une page HTML à partir d'un fichier XML.
Voici ce que je voudrais obtenir: http://www.bypeople.com/pure-css-tree-m ... k-cssdeck/
Je n'arrive pas à afficher les traits de liaison entre items et sous items...
Merci par avance pour votre aide.
Voici mon code:
Je voudrais faire un treeview en css dans une page HTML à partir d'un fichier XML.
Voici ce que je voudrais obtenir: http://www.bypeople.com/pure-css-tree-m ... k-cssdeck/
Je n'arrive pas à afficher les traits de liaison entre items et sous items...
Merci par avance pour votre aide.
Voici mon code:
► Afficher le texte
Code : Tout sélectionner
#include <Array.au3>
#include <IE.au3>
Global $oIE, $sHTML
$oXmlDoc = ObjCreate('Msxml2.DOMDocument.6.0')
$oXmlDoc.load(@ScriptDir & "\monfichier.xml")
If $oXmlDoc.parseError.errorCode <> 0 Then
$oErr = $oXmlDoc.parseError
ConsoleWriteError($oErr.reason & @CRLF)
MsgBox(16, "XML Error", $oErr.reason & @CRLF & "Sortie du programme")
Exit 1
EndIf
_HTMLSheet()
$oRoot = $oXmlDoc.documentElement
_childNodes($oRoot)
_IEBodyWriteHTML($oIE, $sHTML)
Func _childNodes($oNode)
$iLength = $oNode.childNodes.length
If $iLength Then
$sHTML &= '<ul class="tree">' & @CRLF
For $i = 0 To $iLength - 1
$sHTML &= '<li>' & $oNode.childNodes.item($i).getAttribute('name') & ": " & $oNode.childNodes.item($i).getAttribute('Value') & $oNode.childNodes.item($i).getAttribute('ValPair') & " " & $oNode.childNodes.item($i).getAttribute('DispUnitConverter') & '</li>' & @CRLF
_childNodes($oNode.childNodes.item($i))
Next
$sHTML &= '</ul>' & @CRLF
EndIf
EndFunc ;==>_childNodes
Func _HTMLSheet()
$oIE = _IECreate()
$hwndIE = _IEPropertyGet ($oIE, "hwnd")
$oBody = _IETagNameGetCollection($oIE, "body", 0)
$sHTML = @CRLF & "<!DOCTYPE HTML PUBLIC " & Chr(34) & "-//W3C//DTD HTML 4.01 Transitional//EN" & Chr(34) & @CRLF & @TAB & @TAB & Chr(34) & "http://www.w3.org/TR/html4/loose.dtd" & Chr(34) & ">" & @CRLF
$sHTML &= "<html>" & @CRLF
$sHTML &= "<head>" & @CRLF
$sHTML &= " <meta http-equiv=" & Chr(34) & "Content-Type" & Chr(34) & " content=" & Chr(34) & "text/html" & ";" & " charset=ISO-8859-1" & Chr(34) & ">" & @CRLF
$sHTML &= "<style type=" & Chr(34) & "text/css" & Chr(34) & ">" & @CRLF
$sHTML &= "body {font-size:10pt; font-weight:normal; font-family:monospace,arial,sans-serif;height: 100%; }" & @CRLF
$sHTML &= ".tree, " & @CRLF
$sHTML &= ".tree ul { " & @CRLF
$sHTML &= " margin:0 0 0 1em; /* indentation */ " & @CRLF
$sHTML &= " padding:0; " & @CRLF
$sHTML &= " list-style:none; " & @CRLF
$sHTML &= " color: dark-blue; " & @CRLF
$sHTML &= " position:relative; " & @CRLF
$sHTML &= "} " & @CRLF
$sHTML &= @CRLF
$sHTML &= ".tree ul {margin-left:.5em} /* (indentation/2) */ " & @CRLF
$sHTML &= ".tree:before, " & @CRLF
$sHTML &= ".tree ul:before { " & @CRLF
$sHTML &= " content:""; " & @CRLF
$sHTML &= " display:block; " & @CRLF
$sHTML &= " width:0; " & @CRLF
$sHTML &= " position:absolute; " & @CRLF
$sHTML &= " top:0; " & @CRLF
$sHTML &= " bottom:0; " & @CRLF
$sHTML &= " left:0; " & @CRLF
$sHTML &= " border-left:1px solid; " & @CRLF
$sHTML &= "} " & @CRLF
$sHTML &= @CRLF
$sHTML &= ".tree li { " & @CRLF
$sHTML &= " margin:0; " & @CRLF
$sHTML &= " padding:0 1.5em; /* indentation + .5em */ " & @CRLF
$sHTML &= " line-height:2em; /* default list item's `line-height` */ " & @CRLF
$sHTML &= " position:relative; " & @CRLF
$sHTML &= "} " & @CRLF
$sHTML &= @CRLF
$sHTML &= ".tree li:before { " & @CRLF
$sHTML &= " content:""; " & @CRLF
$sHTML &= " display:block; " & @CRLF
$sHTML &= " width:10px; /* same with indentation */ " & @CRLF
$sHTML &= " height:0; " & @CRLF
$sHTML &= " border-top:1px solid; " & @CRLF
$sHTML &= " margin-top:-1px; /* border top width */ " & @CRLF
$sHTML &= " position:absolute; " & @CRLF
$sHTML &= " top:1em; /* (line-height/2) */ " & @CRLF
$sHTML &= " left:0; " & @CRLF
$sHTML &= "} " & @CRLF
$sHTML &= @CRLF
$sHTML &= ".tree li:last-child:before { " & @CRLF
$sHTML &= " background:white; /* same with body background */ " & @CRLF
$sHTML &= " height:auto; " & @CRLF
$sHTML &= " top:1em; /* (line-height/2) */ " & @CRLF
$sHTML &= " bottom:0; " & @CRLF
$sHTML &= "} " & @CRLF
$sHTML &= "</style>" & @CRLF
$sHTML &= "</head>" & @CRLF
EndFunc