Anonymous
Anonymous
Unregistered
|
Shawn & gang, Help...I'm so close?? I have worked on the code and it's real close.. I believe the problem lies with one of two lines. code:
$Button.onclick = "frm.Submitted.value=1"
-or- code:
$BoxVal.selectedvalue
I can not get the buttons to function... Here is all of the code; code:
break on
$ElementArray="machine1","machine2","machine3","machine4","machine5","machine6","machine7","machine8","machine9"
$Window = IECreateWindow("A Simple ComboBox",300,300,640,480) IEWrite($Window,"Select from the list below...","Courier","5","#0000ff") IEComboBox($Window,"A Simple ComboBox","Your Selection",$ElementArray) ;pass array $b1=IEAddButton($Window,"Submit","Submit",1,2,220,80,75,30) $b2=IEAddButton($Window,"Cancel","Cancel",2,-1,310,80,75,30)
while $window.busy and $window.readystate <> 4 and @error = 0 loop $window.document.GetElementById("ComboBox").focus $SubmitClick = $window.document.GetElementById("Submit") $CancelClick = $window.document.GetElementById("Cancel") $BoxVal = $window.document.GetElementById("ComboBox") $button= 0 $box=0 while @error = 0 and frm.submitted.value <> 0 ? $SubmitClick.value ? $BoxVal.selectedvalue sleep (5) If Trim ("$SubmitClick.value") <> "Submit" $button= $SubmitClick.value $Box = $Boxval.selectedvalue Endif If Trim ("$CancelClick.value") <> "Cancel" $button=$CancelClick.value $Box ="Cancel" Endif loop
?"Return: " $box ?"pause..." get$k
$window.quit $window = 0 exit 1 ;&&&&&&&&&&&&&&&&&&&&&&& ; Function IEAddButton($Window,$Caption,$ID,$ClickVal,$TabIdx,$Left,$Top,$Width,$Height) dim $Button $Button = $Window.Document.CreateElement("input") $Button.Type = "Button" $Button.Value = "$caption" $Button.ID = $ID $Button.onclick = "frm.Submitted.value=1" $Button.Tabindex= "$TabIdx" $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 IEComboBox($Window,$title,$text,$ElementArray)
$html='<HTML><HEAD><TITLE>$title</TITLE></HEAD><BODY><BR>$text<BR><form name=frm> <OBJECT ID="ComboBox" WIDTH=200 HEIGHT=26 CLASSID="CLSID:8BD21D30-EC42-11CE-9E0D-00AA006002F3"> </OBJECT> </form></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 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
|