#90886 - 2003-01-10 08:28 AM
Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
Hallo.
After select an Item from ListView the Script makes some operations and then it changes the ListView in order to visualisize the result. For this im using $Item.Index. During Script aktion it is possible to sort the ListView new and then $Item.Index is wrong. How can I protect the ListView temporary from new sort. I have tryed BeginUpdate/EndUpdate, but it will only disable the rendering - sort is possible.
Thanks for your help. Jens
|
Top
|
|
|
|
#90888 - 2003-01-10 09:09 AM
Re: Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
Thanks for the fast help.
Temporary set .HeaderStyle=1 and reset after changings to .HeaderStyle=2 is working fine.
Can you explain me IIRC value ?
Jens
|
Top
|
|
|
|
#90890 - 2003-01-10 09:59 AM
Re: Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
That's a good question. But I think to use the Index is easier and faster then comparing all Items in a very large List. :-)
|
Top
|
|
|
|
#90892 - 2003-01-10 11:07 AM
Re: Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
It is a Script to change DHCP Server entries and handle the reservations. For security reasons only a small range of IP's has access to the internet. The ListView shows a just in time dumped DHCP entries list. After selecting an Item you can open or close the Access. In order to save the time for dumping and realoading the hole list from the DHCP Server again the script has to update the ListView entries too.
code:
; created by Jens Ludolph 2002 ; changed by Jens Ludolph 10.01.03 ; Version KiXtart 2001.412 ;======================================== Break ON ;======================================== $Path="D:\IPtoDHCP\" $closeAccess=0 $LabelBackColor=&C9C9C9 ;---------------------------------------- ; FormDefinition ;---------------------------------------- $Title=" DHCP Konfiguration" ;---------------------------------------- $Form = CreateObject("Kixtart.Form") $Form.Caption = $Title $Form.Size = 620,418 $form.fontname = "Arial" $form.fontsize = 9 $form.fontbold = 0 $form.forecolor = &808080 ;---------------------------------------- ; ListDefinition ;---------------------------------------- $XCoo=20 $YCoo=70 $ListView = $Form.ListView $ListView.Location = $XCoo,$YCoo $ListView.Size = 350, 216 $ListView.FullRowSelect = True $ListView.OnClick = "fn_collect()" $ListView.Sorted = 1 $ListView.MultiSelect = False ;$ListView.GridLines = True $ListView.Columns.Count = 3 $ListView.Columns(0).Text = "Name" $ListView.Columns(0).Width = 110 $ListView.Columns(1).Text = "IP-Address" $ListView.Columns(1).Width = 110 $ListView.Columns(2).Text = "Mac-Address" $ListView.Columns(2).Width = 110 ;---------------------------------------- $prgProgressBar = $Form.ProgressBar("",$XCoo-10,$YCoo-30+320,380,20) $prgProgressBar.Style = 1 $prgProgressBar.ForeColor =&808080 ;---------------------------------------- ; FrameDefinition ;---------------------------------------- $DHCP_Frame=$Form.Frame("DHCP Server List") $DHCP_Frame.Location = $XCoo-10,$YCoo-30 $DHCP_Frame.Size = 380, 290 $Inte_Frame=$Form.Frame("Internet Address") $Inte_Frame.Location = 400,$YCoo-30 $Inte_Frame.Size = 200, 140 $Pool_Frame=$Form.Frame("Pool Address") $Pool_Frame.Location = 400,$YCoo+120 $Pool_Frame.Size = 200, 140 ;---------------------------------------- ; LabelDefinition ;---------------------------------------- $lbl_internet_na=$form.label("",460,$YCoo,110,18) $lbl_internet_na.backcolor=$LabelBackColor $lbl_internet_na.fontsize = 9 $lbl_internet_na.borderstyle = 5 $form.printxy(410,$YCoo-30+30,"Name :") ;---------------------------------------- $lbl_internet_ip=$form.label("",460,$YCoo+18+5,110,18) $lbl_internet_ip.backcolor=$LabelBackColor $lbl_internet_ip.fontsize = 9 $lbl_internet_ip.borderstyle = 5 $form.printxy(433,$YCoo-30+30+18+5,"IP :") ;---------------------------------------- $lbl_internet_ma=$form.label("",460,$YCoo+18+5+18+5,110,18) $lbl_internet_ma.backcolor=$LabelBackColor $lbl_internet_ma.fontsize = 9 $lbl_internet_ma.borderstyle = 5 $form.printxy(422,$YCoo-30+30+18+5+18+5,"Mac :") ;---------------------------------------- $lbl_pool_na=$form.label("",460,$YCoo+150,110,18) $lbl_pool_na.backcolor=$LabelBackColor $lbl_pool_na.fontsize = 9 $lbl_pool_na.borderstyle = 5 $form.printxy(410,$YCoo+150,"Name :") ;---------------------------------------- $lbl_pool_ip=$form.label("",460,$YCoo+150+18+5,110,18) $lbl_pool_ip.backcolor=$LabelBackColor $lbl_pool_ip.fontsize = 9 $lbl_pool_ip.borderstyle = 5 $form.printxy(433,$YCoo+150+18+5,"IP :") ;---------------------------------------- $lbl_pool_ma=$form.label("",460,$YCoo+150+18+5+18+5,110,18) $lbl_pool_ma.backcolor=$LabelBackColor $lbl_pool_ma.fontsize = 9 $lbl_pool_ma.borderstyle = 5 $form.printxy(422,$YCoo+150+18+5+18+5,"Mac :") ;---------------------------------------- ; ButtomDefinition ;---------------------------------------- $Bt_Exit = $Form.Button $Bt_Exit.Location = $Form.ClientWidth-10-75,$Form.ClientHeight-10-23 $Bt_Exit.Size = 75,23 $Bt_Exit.Text = "Exit" $Bt_Exit.OnCLick = "Quit()" ;---------------------------------------- $Bt_Neu = $Form.Button $Bt_Neu.Location = $Form.ClientWidth-10-75-10-75,$Form.ClientHeight-10-23 $Bt_Neu.Size = 75,23 $Bt_Neu.Text = "New" $Bt_Neu.OnCLick = "fn_bt_neueAuswahl()" ;---------------------------------------- $Bt_Scope1 = $Form.Button $Bt_Scope1.Location = $XCoo+15,$YCoo-30+$DHCP_Frame.ClientHeight-10-23 $Bt_Scope1.Size = 100,23 $Bt_Scope1.Text = "Location1" $Bt_Scope1.OnCLick = "fn_bt_Scope1()" ;---------------------------------------- $Bt_Scope2 = $Form.Button $Bt_Scope2.Location = $XCoo+15+100+10,$YCoo-30+$DHCP_Frame.ClientHeight-10-23 $Bt_Scope2.Size = 100,23 $Bt_Scope2.Text = "Location2" $Bt_Scope2.OnCLick = "fn_bt_Scope2()" ;---------------------------------------- $Bt_Scope3 = $Form.Button $Bt_Scope3.Location = $XCoo+15+100+10+100+10,$YCoo-30+$DHCP_Frame.ClientHeight-10-23 $Bt_Scope3.Size = 100,23 $Bt_Scope3.Text = "Location3" $Bt_Scope3.OnCLick = "fn_bt_Scope3()" ;---------------------------------------- $Bt_closeAccess = $Form.Button $Bt_closeAccess.Location = 465,$YCoo+75 $Bt_closeAccess.Size = 100,23 $Bt_closeAccess.Text = "Close Access" $Bt_closeAccess.OnCLick = "fn_bt_closeAccess()" ;---------------------------------------- $Bt_openAccess = $Form.Button $Bt_openAccess.Location = 465,$YCoo+150+75 $Bt_openAccess.Size = 100,23 $Bt_openAccess.Text = "Open Access" $Bt_openAccess.OnCLick = "fn_bt_openAccess()" $Bt_closeAccess.Enabled = False $Bt_openAccess.Enabled = False ;---------------------------------------- ;$Form.TopMost=True $Form.Visible=True $Form.Center $Form.Show
fn_Label("Please select scope",&008040)
While $Form.Visible $=Execute($Form.DoEvents) Loop ;---------------------------------------- ; FunctionDefinition ;---------------------------------------- Function fn_ListCreate() ;---------------------------------------- $J=0 $RowIndex=0 $draw_end=0 $ListView.HeaderStyle=1 $ListView.Items.clear $draw_entry=0 $draw_end=10 $ProgressPrompt = "Export DHCP data from " + $ServerIP fn_Draw_State($draw_entry, $draw_end, 0.03) SHELL "%COMSPEC% /C " + $Path + "DHCPCMD.exe " + $ServerIP + " enumclients " + $ScopeIP + " -h >" + $Path + $Location+ ".txt" If Open (10, $path + $Location + ".txt", 2) = 0 $TempDHCPList = '' $LineDHCPList = ReadLine (10) While @error = 0 If $LineDHCPList<>"DHCP Server version 4.1" AND $LineDHCPList<>"Command successfully completed." AND Len($LineDHCPList)<53 AND INSTR($LineDHCPList,"(null)")=0 $TempDHCPList = $TempDHCPList + $LineDHCPList + ',' EndIf $LineDHCPList = ReadLine (10) Loop Close (10) $ArrayDHCPList = Split (SubStr ($TempDHCPList, 1, Len ($TempDHCPList) - 1), ',', -1) $ListView.Items.Count = Val(UBound ($ArrayDHCPList)+1) $ProgressPrompt = "Input DHCP data" FOR $Index = 0 TO Val(UBound ($ArrayDHCPList)) if Val(UBound ($ArrayDHCPList))<=90 $draw_entry=$draw_end $draw_end=$draw_entry+(90/Val(UBound ($ArrayDHCPList))) fn_Draw_State($draw_entry, $draw_end, 0.03) else if $J=(Val(UBound ($ArrayDHCPList))/90)+1 $draw_entry=$draw_end $draw_end=$draw_entry+1 fn_Draw_State($draw_entry, $draw_end, 0.03) $J=0 endif endif
for $m=len($ArrayDHCPList[$Index]) to 1 Step -1 if SUBSTR($ArrayDHCPList[$Index],$m-1,1)=" " $MacAd=SUBSTR($ArrayDHCPList[$Index],$m,len($ArrayDHCPList[$Index])) $ListView.Items($RowIndex).SubItems(2).Text = $MacAd $ArpIn=RTRIM(SUBSTR($ArrayDHCPList[$Index],1,$m-1)) goto "enum_name" endif next :enum_name for $m=len($ArpIn) to 1 Step -1 if SUBSTR($ArpIn,$m-1,1)=" " $Name=SUBSTR($ArpIn,$m,len($ArpIn)) if $Name="(null)" $RowIndex=$RowIndex-1 goto "enum_fin" endif $ListView.Items($RowIndex).SubItems(0).Text = $Name $ArpIn=RTRIM(SUBSTR($ArpIn,1,$m-1)) goto "enum_ip" endif next :enum_ip for $m=len($ArpIn) to 1 Step -1 if SUBSTR($ArpIn,$m-1,1)=" " $IPBase=SUBSTR($ArpIn,$m,len($ArpIn)) $ListView.Items($RowIndex).SubItems(1).Text = $IPBase goto "enum_fin" endif next :enum_fin $RowIndex=$RowIndex+1 $J=$J+1 NEXT fn_Draw_State($draw_end, 100, 0.03) fn_Draw_State(0,0,0.03) fn_Label("Select from list",&008040) ENDIF $ListView.HeaderStyle=2 EndFunction ;---------------------------------------- Function fn_collect() ;---------------------------------------- $ListView.HeaderStyle=1 DIM $IPPart[10] $found=0 $red_inter=0 $green_inter=0 $green_pool=0 $J=0 $draw_end=0 $ProgressPrompt = "Checking selection" if $lbl_internet_na.caption=$lbl_pool_na.caption fn_clearLabel() endif For Each $Item in $ListView.SelectedItems $Name_sel=$Item.SubItems(0).Text $IPBase_sel=$Item.SubItems(1).Text $MacAd_sel=$Item.SubItems(2).Text $SelInd=$Item.Index Next $I=1 $SP=SPLIT($IPBase_sel,".") For Each $Element In $SP $IPPart[$I]=ltrim($Element) $I=$I+1 Next select case VAL($IPPart[3])=XXX or VAL($IPPart[3])=YYY or (VAL($IPPart[3]+$IPPart[4])<=ZZZZZZ And $Location="Location2") or (VAL($IPPart[3]+$IPPart[4])<=10161 And $Location="Location3") For $Index=0 to $RowIndex-1 fn_create_draw($draw_entry,$RowIndex,$J) if $Name_sel=$ListView.Items($Index).SubItems(0).Text And $Index<>$SelInd fn_red_pool($ListView.Items($Index).SubItems(0).Text,$ListView.Items($Index).SubItems(1).Text,$ListView.Items($Index).SubItems(2).Text) $SelInd_pool=$Index else if INSTR($Name_sel,"FREE") if $green_inter=0 fn_green_inter($Name_sel,$IPBase_sel,$MacAd_sel) endif $SelInd_internet=$SelInd goto "end_fn_collect" else if $red_inter=0 fn_red_inter($Name_sel,$IPBase_sel,$MacAd_sel) endif $SelInd_internet=$SelInd endif endif $J=$J+1 Next case VAL($IPPart[3])<>XXX or VAL($IPPart[3])<>YYY or (VAL($IPPart[3]+$IPPart[4])>ZZZZZZ And $Location="Location2") or (VAL($IPPart[3]+$IPPart[4])>10161 And $Location="Location3") For $Index=0 to $RowIndex-1 fn_create_draw($draw_entry,$RowIndex,$J) if $Name_sel=$ListView.Items($Index).SubItems(0).Text And $Index<>$SelInd fn_red_inter($ListView.Items($Index).SubItems(0).Text,$ListView.Items($Index).SubItems(1).Text,$ListView.Items($Index).SubItems(2).Text) fn_red_pool($Name_sel,$IPBase_sel,$MacAd_sel) $found=1 $SelInd_internet=$Index else if $found=0 if $green_pool=0 fn_green_pool($Name_sel,$IPBase_sel,$MacAd_sel) endif endif $SelInd_pool=$SelInd endif $J=$J+1 Next endselect :end_fn_collect fn_Draw_State($draw_end, 100, 0.01) fn_Draw_State(0,0,0.01) if $lbl_internet_na.caption="" or INSTR($lbl_internet_na.caption,"FREE")<>0 $Bt_closeAccess.Enabled = False else $Bt_closeAccess.Enabled = True endif if $lbl_pool_na.caption<>"" And $lbl_internet_na.caption<>"" $Bt_openAccess.Enabled = True else $Bt_openAccess.Enabled = False endif if (INSTR($Name_sel,"FREE")=1 and $lbl_pool_na.caption="") or $lbl_internet_na.caption="" fn_Label("Select from list",&008040) else fn_Label("Select from list or action button",&008040) endif $ListView.HeaderStyle=2 EndFunction ;---------------------------------------- Function fn_dhcp_change($fnCaller) ;---------------------------------------- $ListView.HeaderStyle=1 $DelStr=$Path+"DHCPCMD.exe " + $ServerIP + " removereservedip " + $ScopeIP + " " + ltrim($lbl_internet_ip.caption) + " " + ltrim($lbl_internet_ma.caption) $AddStr=$Path+"DHCPCMD.exe " + $ServerIP + " addreservedip " + $ScopeIP + " " + $IPNew + " " + $MacNew + " " + $NameNew if $fnCaller=1 fn_Label("closing access for " + ltrim($lbl_internet_na.caption),&808080) fn_close($DelStr) $ProgressPrompt="closing access for " + ltrim($lbl_internet_na.caption) fn_Draw_State(0, 100, 0.03) fn_Draw_State(0, 0, 0.03) fn_Label("protecting IP " + ltrim($lbl_internet_ip.caption),&808080) fn_open($AddStr) $ProgressPrompt="protecting IP " + ltrim($lbl_internet_ip.caption) fn_Draw_State(0, 100, 0.03) fn_Draw_State(0, 0, 0.03) fn_Label("close Access finished",&808080) $status="close Access finished" Sleep 1 else fn_Label("preaparing access for " + ltrim($lbl_pool_na.caption),&808080) fn_close($DelStr) $ProgressPrompt="preaparing access for " + ltrim($lbl_pool_na.caption) fn_Draw_State(0, 100, 0.03) fn_Draw_State(0, 0, 0.03) fn_Label("openinging IP " + ltrim($lbl_internet_ip.caption),&808080) fn_open($AddStr) $ProgressPrompt="openinging IP " + ltrim($lbl_internet_ip.caption) fn_Draw_State(0, 100, 0.03) fn_Draw_State(0, 0, 0.03) fn_clearLabel_pool() fn_Label("open Access finished",&808080) $status="open Access finished" Sleep 1 endif if $lbl_pool_na.caption="" fn_Label("Select from list",&008040) else fn_Label("Select from list or action button",&008040) endif fn_writeLog($DelStr, $AddStr, $status) $fnCaller=0 $ListView.HeaderStyle=2 EndFunction ;---------------------------------------- Function fn_close($DelStr) ;---------------------------------------- ; $nul=messagebox("%COMSPEC% /C " + $DelStr + " >NUL:","ok",0) SHELL "%COMSPEC% /C " + $DelStr + " >NUL:" EndFunction ;---------------------------------------- Function fn_open($AddStr) ;---------------------------------------- ; $nul=messagebox("%COMSPEC% /C " + $AddStr + " >NUL:","ok",0) SHELL "%COMSPEC% /C " + $AddStr + " >NUL:" fn_green_inter($NameNew,$IPNew,$MacNew) EndFunction ;---------------------------------------- Function fn_writeLog($DelStr, $AddStr, $status) ;---------------------------------------- $nul=open(8, $path + "DHCPkonf.log", 5) $nul=writeline(8, "====================================================" + Chr(13)+ Chr(10)) $nul=writeline(8, @Date + " " + @Time + Chr(13)+ Chr(10)) $nul=writeline(8, "====================================================" + Chr(13)+ Chr(10)) $nul=writeline(8, $DelStr + Chr(13)+ Chr(10)) $nul=writeline(8, $AddStr + Chr(13)+ Chr(10)) $nul=writeline(8, $status + Chr(13)+ Chr(10)) $nul=writeline(8, @fullname + Chr(13)+ Chr(10)) $nul=close (8) EndFunction ;---------------------------------------- Function fn_red_inter($Name_sel,$IPBase_sel,$MacAd_sel) ;---------------------------------------- $red_inter=1 $lbl_internet_na.backcolor=&786FD2 $lbl_internet_na.caption=" "+Ltrim($Name_sel) $lbl_internet_ip.backcolor=&786FD2 $lbl_internet_ip.caption=" "+Ltrim($IPBase_sel) $lbl_internet_ma.backcolor=&786FD2 $lbl_internet_ma.caption=" "+Ltrim($MacAd_sel) EndFunction ;---------------------------------------- Function fn_green_inter($Name_sel,$IPBase_sel,$MacAd_sel) ;---------------------------------------- $green_inter=1 $lbl_internet_na.backcolor=&65CDA0 $lbl_internet_na.caption=" "+Ltrim($Name_sel) $lbl_internet_ip.backcolor=&65CDA0 $lbl_internet_ip.caption=" "+Ltrim($IPBase_sel) $lbl_internet_ma.backcolor=&65CDA0 $lbl_internet_ma.caption=" "+Ltrim($MacAd_sel) EndFunction ;---------------------------------------- Function fn_red_pool($Name_sel,$IPBase_sel,$MacAd_sel) ;---------------------------------------- $lbl_pool_na.backcolor=&65CDA0 $lbl_pool_na.caption=" "+Ltrim($Name_sel) $lbl_pool_ip.backcolor=&786FD2 $lbl_pool_ip.caption=" "+Ltrim($IPBase_sel) $lbl_pool_ma.backcolor=&786FD2 $lbl_pool_ma.caption=" "+Ltrim($MacAd_sel) EndFunction ;---------------------------------------- Function fn_green_pool($Name_sel,$IPBase_sel,$MacAd_sel) ;---------------------------------------- $green_pool=1 $lbl_pool_na.backcolor=&65CDA0 $lbl_pool_na.caption=" "+Ltrim($Name_sel) $lbl_pool_ip.backcolor=&65CDA0 $lbl_pool_ip.caption=" "+Ltrim($IPBase_sel) $lbl_pool_ma.backcolor=&65CDA0 $lbl_pool_ma.caption=" "+Ltrim($MacAd_sel) EndFunction ;---------------------------------------- Function fn_clearLabel() ;---------------------------------------- $lbl_internet_na.backcolor=$LabelBackColor $lbl_internet_na.caption="" $lbl_internet_ip.backcolor=$LabelBackColor $lbl_internet_ip.caption="" $lbl_internet_ma.backcolor=$LabelBackColor $lbl_internet_ma.caption="" $lbl_pool_na.backcolor=$LabelBackColor $lbl_pool_na.caption="" $lbl_pool_ip.backcolor=$LabelBackColor $lbl_pool_ip.caption="" $lbl_pool_ma.backcolor=$LabelBackColor $lbl_pool_ma.caption="" $Bt_closeAccess.Enabled = False $Bt_openAccess.Enabled = False EndFunction ;---------------------------------------- Function fn_clearLabel_pool() ;---------------------------------------- $lbl_pool_na.backcolor=$LabelBackColor $lbl_pool_na.caption="" $lbl_pool_ip.backcolor=$LabelBackColor $lbl_pool_ip.caption="" $lbl_pool_ma.backcolor=$LabelBackColor $lbl_pool_ma.caption="" $Bt_openAccess.Enabled = False EndFunction ;---------------------------------------- Function fn_bt_closeAccess() ;---------------------------------------- $Bt_closeAccess.Enabled = False $closeAccess=1 DIM $IPPart[10] $IPDel=$lbl_internet_ip.caption $I=1 $SP=SPLIT($IPDel,".") For Each $Element In $SP $IPPart[$I]=ltrim($Element) $I=$I+1 Next select case len($IPPart[4])=3 $IPPart[4]=$IPPart[4] case len($IPPart[4])=2 $IPPart[4]="0" + $IPPart[4] case len($IPPart[4])=1 $IPPart[4]="00" + $IPPart[4] endselect $NameNew="FREE" + substr($IPPart[3],len($IPPart[3]),1) + $IPPart[4] $MacNew="abcdef00" + substr($IPPart[3],len($IPPart[3]),1) + $IPPart[4] $IPNew=ltrim($lbl_internet_ip.caption) fn_dhcp_change($closeAccess) $ListView.Items($SelInd_internet).SubItems(0).Text = $NameNew $ListView.Items($SelInd_internet).SubItems(2).Text = $MacNew EndFunction ;---------------------------------------- Function fn_bt_openAccess() ;---------------------------------------- $Bt_openAccess.Enabled = False $closeAccess=0 $NameNew=ltrim($lbl_pool_na.caption) $MacNew=ltrim($lbl_pool_ma.caption) $IPNew=ltrim($lbl_internet_ip.caption) fn_dhcp_change($closeAccess) $ListView.Items($SelInd_internet).SubItems(0).Text = $NameNew $ListView.Items($SelInd_internet).SubItems(2).Text = $MacNew $ListView.Items($SelInd_pool).SubItems(0).Text = "cleared" $ListView.Items($SelInd_pool).SubItems(1).Text = "cleared" $ListView.Items($SelInd_pool).SubItems(2).Text = "cleared" EndFunction ;---------------------------------------- Function fn_bt_Scope1() ;---------------------------------------- $DHCP_Frame.Caption="Scope 1" $Bt_Scope1.Enabled = False $Bt_Scope2.Enabled = False $Bt_Scope3.Enabled = False $ServerIP="AAA.AAA.AAA.AAA" $ScopeIP="BBB.BBB.BBB.BBB" ; $Location="test" $Location="Location1" fn_ListCreate() EndFunction ;---------------------------------------- Function fn_bt_Scope2() ;---------------------------------------- $DHCP_Frame.Caption="Scope 2" $Bt_Scope1.Enabled = False $Bt_Scope2.Enabled = False $Bt_Scope3.Enabled = False $ServerIP="CCC.CCC.CCC.CCC" $ScopeIP="DDD.DDD.DDD.DDD" $Location="Location2" fn_ListCreate() EndFunction ;---------------------------------------- Function fn_bt_Scope3() ;---------------------------------------- $DHCP_Frame.Caption="Scope 3" $Bt_Scope1.Enabled = False $Bt_Scope2.Enabled = False $Bt_Scope3.Enabled = False $ServerIP="EEE.EEE.EEE.EEE" $ScopeIP="FFF.FFF.FFF.FFF" $Location="Location3" fn_ListCreate() EndFunction ;---------------------------------------- Function fn_bt_neueAuswahl() ;---------------------------------------- $ListView.Items.clear fn_clearLabel() $Bt_closeAccess.Enabled = False $Bt_openAccess.Enabled = False $Bt_Scope1.Enabled = True $Bt_Scope2.Enabled = True $Bt_Scope3.Enabled = True fn_Label("Please select scope",&008040) EndFunction ;---------------------------------------- Function fn_Draw_State($draw_entry, $draw_end, $SleepTime) ;---------------------------------------- $XCordinate=($XCoo-10+380)/2-(( Len ( $ProgressPrompt ) *4 )/2) $lbl_progresspompt=$form.label($ProgressPrompt,$XCordinate,$YCoo-30+300,( Len ( $ProgressPrompt ) *6 )+20,20) $lbl_progresspompt.fontsize = 8 $lbl_progresspompt.forecolor = &808080 For $lProgress = $draw_entry to $draw_end $prgProgressBar.Value = $lProgress Sleep $SleepTime Next EndFunction ;---------------------------------------- Function fn_Label($ProgressPrompt,$PromptColor) ;---------------------------------------- $XCordinate=($XCoo-10+380)/2-(( Len ( $ProgressPrompt ) *4 )/2) $lbl_progresspompt=$form.label($ProgressPrompt,$XCordinate,$YCoo-30+300,( Len ( $ProgressPrompt ) *5 )+20,20) $lbl_progresspompt.fontsize = 8 $lbl_progresspompt.forecolor = $PromptColor EndFunction ;---------------------------------------- Function fn_create_draw($draw_entry,$RowIndex,$J) ;---------------------------------------- if ($RowIndex-1)<=100 $draw_entry=$draw_end $draw_end=$draw_entry+(100/Val($RowIndex-1)) fn_Draw_State($draw_entry, $draw_end, 0.01) else if $J=(Val($RowIndex-1)/100)+1 $draw_entry=$draw_end $draw_end=$draw_entry+1 fn_Draw_State($draw_entry, $draw_end, 0.01) $J=0 endif endif EndFunction
Exit 1
|
Top
|
|
|
|
#90895 - 2003-01-10 11:38 AM
Re: Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
No, automatically sort after update ... only view the changings on DHCP Server without reloading the hole List from it ... Jochen, it's working very well. The tip to change .HeaderStyle has solve my problem and I have posted the script, because you have asked for it.
Thank you for your help, again.
|
Top
|
|
|
|
#90897 - 2003-01-10 01:10 PM
Re: Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
... the script looks professional ... , but I am far away to be a profi .
Do you mean that I should define the OnClick Event after unktion fn_ListCreate() ?
Jens
|
Top
|
|
|
|
#90899 - 2003-01-10 01:21 PM
Re: Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
... Yes, you mean. I have made a test. Thanks - I have not thought about the possibility to make a click into an emty List
Regards Jens
|
Top
|
|
|
|
#90901 - 2003-01-10 01:51 PM
Re: Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
Yeah ... same result, but seams to be the better way. Thanks ... Can't receive any Value by using $SelectedItem.Value ??? What's wrong ?
|
Top
|
|
|
|
#90903 - 2003-01-10 02:09 PM
Re: Protect ListView temporary from new sort
|
Jens
Fresh Scripter
Registered: 2001-06-25
Posts: 19
Loc: Kiel ( Germany )
|
It's working !!! What's your opinion to this script ?
Jens Thank you and have a nice weekend.
|
Top
|
|
|
|
Moderator: Shawn, ShaneEP, Ruud van Velsen, Arend_, Jochen, Radimus, Glenn Barnas, Allen, Mart
|
0 registered
and 231 anonymous users online.
|
|
|