OpenFolderWin打開目錄窗體

2018-02-07 14:50 更新
  • 函數(shù)原型


/*
 * 打開目錄窗體 
 * @param icoid     目錄的icoid 
 * @param treeshow  是否顯示左側(cè)目錄樹 
 * @param feature   目錄窗體的特征,默認'titlebutton=close|max|min,width=800,height=500' 
 */
 function OpenFolderWin(icoid,treeshow,feature)
 {        
        if(!treeshow) treeshow=0;  //默認不打開左側(cè)目錄樹		
        //獲取圖標數(shù)據(jù)data,沒有數(shù)據(jù)直接返回	
        var data=_config.sourcedata.icos[icoid];  	
        if(!data) return;  	
        var fid=data.oid;  	
        var topfid=[];  //目錄樹數(shù)組,		
        //根據(jù)data.type判斷是否為目錄類型(目錄類型包括'pan','storage','ftp'類型)	
        if(data.type=='shortcut'){ //如果是目錄快捷方式時		
        if(data.tdata.type!='folder') return;		 
        fid=data.tdata.oid;		 
        topfid=data.tdata['topfid'];	
        }else{  //必須是目錄類型的才能打開		
        if(data.type!='folder' && data.type!='pan' && data.type!='storage' && data.type!='ftp') return;		
        topfid=_ico.getTopFid(fid);	
        }		
        //查找此目錄窗體是否已經(jīng)打開;	
        var win=null;	
        for(var id in _window.windows){
        		var obj=_window.windows[id];		
        		if((obj.type=='folder') && obj.fid==fid){
        					 win=obj;			 
        					 break;
    		        }	
    	}	
    	if(win){ //此目錄已經(jīng)打開			
    	win.treeshow=treeshow;		
    	win.Focus();  //激活此目錄,并且最前端顯示			
    	}else{ //開始創(chuàng)建目錄窗體				
    	        feature=feature?feature:windows['Folder'].features; //如果沒有feature,則加載默認的特征		win=_window.OpenFolderWin(icoid,topfid,treeshow,feature); //創(chuàng)建目錄窗體,并且加載目錄樹和此目錄內(nèi)容		
    	        if(!data.havetask || data.havetask>0) _dock.Ctask(icoid,win.id); //創(chuàng)建任務(wù)欄圖標			}
    	        }


  • 使用注意事項

  1. 被打開的目錄的數(shù)據(jù)(即:_config.sourcedata.icos[icoid])必須已經(jīng)加載。桌面、任務(wù)欄你的圖標數(shù)據(jù)桌面初始化后即完成加載,其他子目錄必須其上級目錄打開過才會加載其數(shù)據(jù)。如:想要打開“我的文檔”下的目錄“我的圖片”,必須先打開我的文檔(或者先前打開過),才能用此函數(shù)打開我的圖片目錄。

  2. 目錄快捷方式可以不受第1條的限制。

  3. 同一icoid的目錄不會重復(fù)打開。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號