Shawn
Administrator
   
Registered: 1999-08-13
Posts: 8611
|
Seems to work pretty good for me. Maybe I changed (fixed) something by accident. Here's the code, using Kixtart 4.10 RC1 at the moment.
code:
break on
$ElementArray="machine1","machine2","machine3"
$Window = IECreateWindow("This Damn Thing",300,300,640,480)
IEWrite($Window,"hello","Arial","4","#00ff00") IEWrite($Window,"hello1",,"2","#ff0000") IEWrite($Window,"hello2","Courier","5","#0000ff") IEWrite($Window,"hello3")
IEComboBox($Window,"This Damn Thing","Test IT",$ElementArray) ;pass array
$b1=IEAddButton($Window,"Button1",10,0,50,25) $b2=IEAddButton($Window,"Button2",70,0,50,25) $b3=IEAddButton($Window,"Button3",130,0,50,25)
?"pause..." get$k
$window.quit $window = 0 exit 1 ;&&&&&&&&&&&&&&&&&&&&&&&
;***********************************************************************************************
Function IEComboBox($Window,$title,$text,$ElementArray)
$html='<HTML><HEAD><TITLE>$title</TITLE></HEAD><BODY><BR>$text<BR> <OBJECT ID="ComboBox" WIDTH=200 HEIGHT=24 CLASSID="CLSID:8BD21D30-EC42-11CE-9E0D-00AA006002F3"> </OBJECT></BODY></HTML> ' $window.document.write('$html')
WHILE $window.busy <> 0 AND @ERROR = 0 LOOP
$combobox = $IE.document.GetElementById("combobox")
for each $element in $ElementArray $=$combobox.additem("$Element") next
$combobox.value=$ElementArray[0]
EndFunction
;*********************************************************************************************** Function IECreateWindow($title,$left,$top,$width,$height, optional $html) $ie = createobject("internetexplorer.application") $ie.addressbar = 0 $ie.menubar = 0 $ie.toolbar = 0 $ie.statusbar = 0 $ie.top = $top $ie.left = $left $ie.width = $width $ie.height = $height $ie.navigate("about:blank") while $ie.busy and $ie.readystate <> 4 and @error = 0 loop $ie.document.body.scroll = no if $html $ie.document.write('$html') else $ie.document.write('<title>$title</title>') endif $ie.document.body.bgcolor = "threedface" $ie.document.body.border = "1px solid #cccccc" $IECreateWindow = $ie $ie.Visible = 1 while setfocus("$title") <> 0 loop EndFunction
Function IEWrite($Window,$text, optional $font, optional $size, optional $color, optional $Clear) if not $font $font='Verdana, Helvetica, sans-serif' endif if not $size $size='3' endif if not $color $color='#000000' endif if not $bgcolor $bgcolor='#ffffff' endif $HTML = '<font size="$size" FACE="$font" color="$color">$text<br></font>' $window.document.write($HTML) WHILE $window.busy <> 0 AND @ERROR = 0 LOOP EndFunction
Function IEAddButton($Window,$Caption,$Left,$Top,$Width,$Height) dim $Button $Button = $Window.Document.CreateElement("input") $Button.Type = "Button" $Button.Value = $Caption $Button.Style.Position = "Absolute" $Button.Style.PixelTop = $Top $Button.Style.PixelLeft = $Left $Button.Style.PixelWidth = $Width $Button.Style.PixelHeight = $Height $Button = $Window.Document.Body.AppendChild($Button) $IEAddButton = $Button EndFunction
Function IESetBackColor($Window,$Color) $Window.Document.Body.BGColor = $Color EndFunction
Function IEInputBox($title, Optional $prompt, optional $Ok, optional $Cancel) Dim $click, $html, $Window, $status, $click, $button, $box
If not $prompt $prompt = "Please enter your password." endif If not $ok $ok = "OK" endif If not $Cancel $cancel = "Cancel" endif
$html = ' <html><head><title>$title</title><style> <!---body{ background-color: silver; color: black;font-family: tahoma, arial; font-size: 10pt; margin: 3px "input.tbox { border: lpx black solid;}td { font: 10pt tahoma; }---> </style></head> <body scroll=no > <table align=center> <form name=frm> <tr> <td align=right>$prompt </td> <td colspan=2><input id=input value="" class=tbox></td> </tr> <tr> <td><input id=ok type=button value=" $ok " onclick="frm.status.value=1"> <input type=hidden id=status name=status value=0></td> <td align=right><input id=cancel type=button value=" $Cancel " onclick="frm.status.value=2"></td> </tr> </form> </table></body></html>'
$Window = IECreateWindow($title,100,100,300,130,$html) while $window.busy and $window.readystate <> 4 and @error = 0 loop $window.document.GetElementById("input").focus $status = $window.document.GetElementById("status") $click = $window.document.GetElementById("input") $button= 0 $box=0 while @error = 0 and $button = 0 $button=$status.value $box=$click.value select case $button = "1" $IEInputBox = $box case $button = "2" $IEInputBox = "Cancel" endselect loop $window.quit $window="" EndFunction
|