分享

web.form库源码

 新用户01684162 2021-07-09

namespace web; 

 

 import util.metaProperty
import win; 
import com;

mapurl = function(url){
    var local = ..io.localpath(url)
    if( local ){  
        if(not ..io.exist(local) ){
            //if( ! _STUDIO_INVOKED ){
            url = ..string.replace(url,"@\","/");
            url = ..string.upper(url)
            url = "res://" + ..io._exepath + "/RES/" + url; 
            //} 
        } 
        else {
            url  = local;
        }
         
    }
    return url;
}

class form{

    ctor( winform ,uiflag,dlctl)begin
    
        //默认是有滚动条的,没有才需要设置
        if(type(winform.scroll)==type.table /*winform没有的变量都会返回一个空的table*/ ){
            if(uiflag)
                uiflag |=  0x8/*_UIFLAG_SCROLL_NO*/ 
            else 
                uiflag = 0x8/*_UIFLAG_SCROLL_NO*/     
        } 
        
        this._dlctl = dlctl;
        this._hostflag = uiflag; 
        ..com.CreateEmbed( this ,winform )   
        winform.web = this;

        /*
        this._form = winform
        this._host = 宿主对象
        this._object = 控件对象
        */

        this._browser = this._object 
        this.hwndEmbedding = ..win.findEx( winform.hwnd,0,"shell embedding" )
        this.hwndControl = ..win.getLeaf( winform.hwnd ) 
        
        //如果是控件,返回父窗口  
        var form = ..win.ui.getForm(winform.hwnd) 
        form.isDialogMessage = function(hwnd,msg){ 
            if (   (msg.message >= 0x100/*_WM_KEYFIRST*/) && (msg.message <= 0x108/*_WM_KEYLAST*/) ) {  
                if( msg.wParam!= 0xD/*_VK_RETURN*/ ){
                    ifthis._host.tranacc(msg) ){ 
                        return true;  
                    }
                }
             }
        }
        form._ondestroy = function(){
            this._host.close(); 
        }
         
        
        //用局部变量来隐藏对象的数据 
        var margin = {left=0;top=0;right=0;bottom=0}
        winform.adjust = function( width,height) begin  
            var rc = winform.clientRect;
            var l = tonumber( margin.left);
            var t = tonumber( margin.top);
            var r = tonumber( margin.right);
            var b = tonumber( margin.bottom) 
            if( (l!==null) && (t!==null) && (r!==null) && (b!==null) ){
                //调整浏览器窗口,以适应新的窗口尺寸
                ::MoveWindow(this.hwndEmbedding,l,t, rc.right-rc.left-r-l, rc.bottom-rc.top-b-t,1) 
            } 
        end
        
        var sink, cookie =..com.Connect(this._browser, this );
    end
    
    //设置网页边距getting started
    setMargin =  function(left,top,right,bottom){ 
            margin.left = left;
            margin.top = top;
            margin.right = right;
            margin.bottom = bottom;
            var rc = this._form.rect;
            ::MoveWindow(this.hwndEmbedding,left,top, rc.right-rc.left-margin.right-left, rc.bottom-rc.top-margin.bottom-top,1) 
            
    };
        
    //获取网页边距
    getMargin =  function(){
            return margin.left,margin.top,margin.right,margin.bottom 
    };
    
    waitClose = function(){
        //等待直到web窗口被关闭
        var hwnd = this._form.hwnd; 
        while( ::IsWindow(hwnd) ) 
        ..win.delay(100)  
    }
    
    isbrowser = function(pdisp){
        return ..com.topointer(this._browser) == ..com.topointer(pdisp)
    }
    
    wait = function(url){ 
        //等待页面下载完成(如果不指定url参数,则等待当前页面打开)
        var hwnd = this._form.hwnd; 
        var delay = ..win.delay;
        var browser = this._browser;
        var curl;
        
        while(::IsWindow(hwnd) ){ 
            
                do { 
                    delay(100)    
                }while( (browser.ReadyState != 4/*READYSTATE_COMPLETE*/) || browser.Busy )
                
                curl = ..string.lower(  browser.LocationURL ) ; 
                if( ..string.startWith( curl, "res://") ){
                
                    if(..string.find( curl,"err") ){
                        //..io.print("wait()","出错了");
                        return false;
                    }
                }           
                    
                //如果用户没有指定需要到达的URL
                if(!url)
                    return true;   
                if( ..string.find( browser.LocationURL,url) )
                    return true
                    
                delay(100) 
        
        } 
        return false;
    }
    
    waitEle = function(name,frame){ 
        //等待页面下载完成(如果不指定url参数,则等待当前页面打开)
        var hwnd = this._form.hwnd; 
        var delay = ..win.delay; 
        var ele;
        while(::IsWindow(hwnd) ){ 
            delay(100)
            ele = this.getEle(name,frame) 
            if(ele) 
                return ele;
                    
        } 
        return null;
    }
    waitDoc = function( frame){ 
        //等待页面下载完成(如果不指定url参数,则等待当前页面打开)
        var hwnd = this._form.hwnd; 
        var delay = ..win.delay; 
        var doc;
        while(::IsWindow(hwnd) ){ 
            delay(100)
            doc = this.getDoc(frame) 
            if(doc) 
                return doc;
                    
        } 
        return null;
    }
    
    doScript = function(s,frame,n="javascript"){//执行网页脚本或框架内脚本
        var doc = this.getDoc(frame)
        if( doc  ){
            var wd =  doc.parentWindow or doc.contentWindow
            wd.execScript(s,n);
        } 
    
    }
    
    fromPoint = function(x = 0,y=0,frame){
        var doc = this.getDoc(frame);
        if( doc  ){
                return doc.elementFromPoint(x,y);
        }
    }
    
    getDoc = function(frame){ 
        if(frame){
                var ele =  this._browser.Document.getElementById(frame);
                if(ele){
                    //return ele.contentDocument;
                    return ele.contentWindow.Document; 
                }
                
        }
        else
                return this._browser.Document; 
    }
    
    
    getEle = function(id,frame){
        var doc = this.getDoc(frame);
        if(doc){
            var ele = doc.getElementById(id);
            if(ele) return ele;
            
            var eles = doc.getElementsByName(id);
            return eles(0); 
        } 
    }
    getEles = function(name,frame){
        var doc = this.getDoc(frame);
        return doc && doc.getElementsByName(name);
    }
    
    
    
    getOption = function(name,ind,frame){
        var ele = this.getEle(name,frame);  
        return ele.options(ind);
    }
    
    findOption = function(name,v,frame){
        var ele = this.getEle(name,frame);  
        for i,opt in com.each(ele.options) {
            if(opt.value=v or opt.innerText==v)
                return opt;
        } 
    } 
    
    
    write = function(strhtml,frame ){
        var doc = this.getDoc(frame)
        if(!doc){ 
            if(!frame){
                this.go("about:blank")
                doc = this.document;
            }
        }
        if(!doc)
            return false;
        
        doc.write(strhtml); 
        doc.close();
    }   
    
    go = function(url,headers,target="_self"){ 
        url = ..web.mapurl(url);
        if(headers=="")headers=null;
        this._browser.Navigate(url,0,target,null,headers)
    }
    post = function(url,postdata,headers='\r\nContent-Type: application/x-www-form-urlencoded',target="_self"){ 
        if(headers=="")headers=null;
        if(!postdata)return this.go(url); 
        url = ..web.mapurl(url);
        this._browser.Navigate(url,0,target,{ postdata/* 转换为字节数组*/ } ,headers)
    }
    
    goback = function(){ 
        this._browser.GoBack()
    } 
    goforward = function(){ 
        this._browser.GoForward()
    } 
    gohome = function(){ 
        this._browser.GoHome()
    } 
    gosearch = function(){ 
        this._browser.GoSearch()
    } 
    refresh = function(){ 
        this._browser.Refresh()
    }
    refresh2 = function(ref=REFRESH_COMPLETELY){ 
        this._browser.Refresh2(0)
    }
    refresh3 = function(ref=REFRESH_COMPLETELY){ 
        this._browser.Refresh2(3)
    }
    stop = function(){
        this._browser.Stop()
    }  
    
    eachAll = function(tag,frame){
        var doc = this.getDoc(frame); 
        if(doc){
            if(tag)
                return ..com.each( doc.all.tags(tag)  );
                
            return ..com.each( doc.all  );
        }
    }
    
    eachLinks = function(frame){
        return this.eachAll('A',frame )  ); 
    }
    
    @metaProperty;
}
 


form.metaProperty = ..util.metaProperty(

    type = {
        _get = function(){ 
            return  owner._browser.Type
        }   
    }; 
    document = {
        _get = function(){ 
            return  owner._browser.Document
        } 
    }
    host = {
        _get = function(){ 
            return  owner._browser.Document.parentWindow.location.host
        }   
    }; 
    body = {
        _get = function(){ 
            return  owner._browser.Document.Body
        }   
    };   
    location = {
        _get = function(){ 
             return owner._browser.LocationURL ;  
        }
        _set = function( value ){
            owner._browser.Navigate(value) ;  
        }   
    };  
    silent = {
        _get = function(){ 
            return owner._browser.Silent ;  
        }
        _set = function( value ){
            owner._browser.Silent = value;  
        }   
    }; 
    application = {
        _get = function(){ 
            return owner._browser.Application ;  
        }
    }
    execEle = function(ele,cmd,val,ui){ 
        iftype(ele)==type.string)
            ele = owner.getEle(ele);
            
        var controlRange = ele.document.body.createControlRange(); 
        if(!controlRange)
            return;
            
        //ele.contentEditable = true; 
        controlRange.addElement(ele); 
        controlRange.execCommand( cmd,ui,val); 
        //ele.contentEditable = false;  
    }
    exec = function(cmd,val,ui){
        owner.document.execCommand(cmd,ui,val,0); 
    } 
    execWb =  function(id,val,opt=1){ 
        return owner._browser.ExecWB(id,opt,val) 
    }  
    openproxy = {
        _get = function(){  
            var ie = com.CreateObject("InternetExplorer.Application.1")  
            ie.left=5000 
            ie.top=5000
            
            var wb = owner;//因为每个函数有自已的owner参数,创建一个wb变量将这里的owner保留给ie.DWebBrowserEvents2.BeforeNavigate2使用
            ie.DWebBrowserEvents2 = {
                BeforeNavigate2 = function( pDisp, url, Flags, TargetFrameName, PostData, Headers, Cancel ) begin 
                    ie.Quit(); 
                    ie = null;
                    wb.post(url,PostData,Headers ) 
                    return true;
                end
            } 
            com.Connect(ie, ie.DWebBrowserEvents2 ) 
            ie.Application.RegisterAsBrowser = true;
            return ie.Application; 
        }   
    };   
    get = function(){
        
    }
     
)
 
form.metaProperty.select = function(name,v,frame){//支持框架
        var ele = owner.getEle(name,frame);   
        var opt;
        if(ele){
            if(type(v)==type.number and v < ele.length){
                opt = ele.options(v);
            }
            else{
                for i,child in com.each(ele.options) {
                    if(child.value=v or child.innerText==v){
                        opt=child;
                    }
                } 
            }
        } 
        if( opt ){
            opt.selected = true;
            if( ele.onchange )
                ele.fireEvent("onchange")
                
            return opt;
        }
}
 
//自动提示
/******intellisense( ) 
web.mapurl(__/*根目录相对路径*/) = 将根目录下的相对路径转换为正确的URL\n支持发布后的内嵌资源文件\n此函数在web.form库内定义
web.form( __/*winform对象*/ ) = 创建web窗体
!wb.hwndEmbedding = 嵌入窗口
!wb.hwndControl = 控件窗口
!wb._browser = 浏览器控件,com对象
!wb._object = 控件对象
!wb.write("__") =  将字符串值写入网页、不允许追加
!wb.write("__","框架名") = 将字符串值写入框架网页、不允许追加
!wb.type = 返回当前加载的文件类型\n例如doc文件返回Microsoft Word Document 
!wb.wait("__") = 等待指定的网址下载完成,支持模式语法
!wb.wait() = 等待网页下载完成
!wb.write("__") = 将字符串值写入网页
!wb.setMargin(.(left,top,right,bottom) = 设置网页边距
!wb.getMargin() = 读取网页边距\nleft,top,right,bottom=wb.getMargin()
!wb.waitClose() = 等待网页被关闭
!wb.showhelp = 是否允许显示帮助对话框
!wb.silent = 组件对话框、脚本错误对话框静默模式\n如果仅需禁用脚本错误对话框,建议设置noScriptErr属性
!wb.noScriptErr = @.noScriptErr=true;\n//禁止弹出脚本错误对话框,并允许脚本继续执行
!wb.go("__/*网址*/") = 打开网址
!wb.post(.("__/*网址*/","k=v&k2=v2") = 自动提交表单
!wb.post(.("__/*网址*/","k=v&k2=v2","自定义http头") = 自动提交表单
!wb.post(.("__/*网址*/","k=v&k2=v2","自定义http头","目标框架") = 自动提交表单
!wb.location = 当前网址
!wb.host = 当前网址所在主机名
!wb.go("__/*网址*/","自定义http头") = 打开网址
!wb.go("__/*网址*/","自定义http头","目标框架") = 打开网址
!wb.eachLinks() = 创建迭代器,迭代页面所有超链接,例:\nfor(i,ele in wb.eachLinks() ){\n \n}\n
!wb.eachAll() = 创建迭代器,迭代页面所有超链接,例:\nfor(i,ele in wb.eachAll() ){\n \n}\n
!wb.eachLinks("框架名") = 创建迭代器,迭代页面所有超链接,例:\nfor(i,ele in wb.eachLinks("框架名") ){\n \n}\n
!wb.eachAll("input") = 创建迭代器,迭代页面全部节点,例:\nfor(i,ele in wb.eachAll("input") ){\n \n}\n
!wb.eachAll("input","框架名") = 创建迭代器,迭代页面全部节点,例:\nfor(i,ele in wb.eachAll() ){\n   \n}\n
!wb.goback()=导航到历史列表中的上一个页面
!wb.goforward()=导航到历史历表中的下一个项目
!wb.gohome()=导航到缺省页面
!wb.gosearch()=导航到缺省页面
!wb.refresh()=刷新页面\n如果服务器未更新则不会重新下载,类似在浏览器中按F5的效果
!wb.refresh2()=重新下载页面
!wb.refresh3()=重新下载最新页面\n添加Pragma:no-cache请求头,强制服务端刷新\n类似在浏览器中按下Ctrl+F5的效果
!wb.refresh2=根据指定的刷新级别刷新当前页面
!wb.stop()=停止当前导航
!wb.BeforeNavigate2 = @.BeforeNavigate2=function( pDisp, url, Flags, TargetFrameName, PostData, Headers, Cancel ) { 
/*导航发生前触发(打开网页前),刷新时不触发*/
__/*请输入代码*/

!wb.showMenu = @.showMenu=function(x,y,id,ele){
    /*定义此事件函数则禁用默认的右键弹出菜单*/
    select(id) { 
        case 0/*_CONTEXT_MENU_DEFAULT */ {
        
            }
        case 1/*_CONTEXT_MENU_IMAGE*/ {
        
            }
        case 2/*_CONTEXT_MENU_CONTROL*/ {
        
            }
        case 4/*_CONTEXT_MENU_TEXTSELECT */ {
        
            }
        case 5/*_CONTEXT_MENU_ANCHOR*/ {
        
            }
    }
    return false;//返回false禁止默认菜单

}
!wb.showMsg = @.showMsg=function(text/*信息*/,caption/*标题*/){
    /*弹出对话框触发此事件*/
    
    return true; /*返回false则不显示对话框*/
}

!wb.CommandStateChange = @.CommandStateChang=function(cmd,enable) {
    /*当命令的激活状态改变时触发。它表明何时激活或关闭Back和Forward菜单项或按钮 */
    select(cmd) {
        case 0xFFFFFFFF/*_CSC_UPDATECOMMANDS*/ {  
            /*更新控制按钮*/
        }
        case 0x2/*_CSC_NAVIGATEBACK*/ {
            /*启用或禁用后退按钮*/
            __/*请输入代码*/
        }
        case 0x1/*_CSC_NAVIGATEFORWARD*/ {
            /*启用或禁用前进按钮*/
        }  
    }
 } 

!wb.DocumentComplete = @.DocumentComplete=function( pDisp, url) {
    /*当整个文档完成时触发,刷新页面不触发*/
    __/*请输入代码*/

 
!wb.DownloadBegin = @.DownloadBegin=function() {
    /*当某项下载操作已经开始后触发,刷新也可触发此事件*/
    __/*请输入代码*/

!wb.DownloadComplete = @.DownloadComplete=function() {
    /*当某项下载操作已经完成后触发,刷新也可触发此事件*/
    __/*请输入代码*/

!wb.FileDownload = @.FileDownload=function( activeDocument, cancel /*返回值*/) {
    __/*请输入代码*/
}   

!wb.NavigateComplete2 = @.NavigateComplete2=function(pDisp, url) {
    /*导航完成后触发,刷新时不触发*/
    __/*请输入代码*/

!wb.OnVisible = @.OnVisible=function( Visible ) {
    /*显示触发*/
    __/*请输入代码*/
} ;

!wb.NavigateError = @.NavigateError=function(pDisp,url,target,statusCode,cancel /*返回值*/) {
    /*导航遇到错误时触发*/
    __/*请输入代码*/
} ; 

!wb.NewWindow3 = @.NewWindow3=function(ppDisp, Cancel,dwFlags,bstrUrlContext, bstrUrl ) {
    /*弹出新窗口以前触发 */
    __/*请输入代码*/
} ; 

!wb.TitleChange = @.TitleChange=function( text ) {
    /*网页标题改变时触发*/
    __/*请输入代码*/
} ;

                

!wb.NewWindow2 = @.NewWindow2=function( ppDisp, Cancel) {
    /*弹出新窗口以前触发 */
    return owner.openproxy /*创建代理窗口捕获网址并在当前窗口打开*/  
    
    return ppDisp, true; /*第二个返回值如果为真,则取消新窗口*/
    /*新建的web窗体,并将application作为返回值,则在该web窗口中打开*/
    /*return wbother.application; */

!wb._form = !winform.
!ele.fireEvent("onclick") = 自动触发element元素节点的事件脚本.
!ele.click = 模拟鼠标点击\n如果节点有脚本事件,请调用fireEvent方法
!ele.setAttribute("属性名","属性值")  = 修改属性\n也可以直接写 ele.属性名字 = 值
!ele.getAttribute("属性名")  = 获取属性\n也可以直接写 var 返回值=ele.属性名字
!ele.innerHTML = 返回节点内的HTML代码
!ele.outerHTML = 返回该节点的HTML代码
!ele.checked = 复选框、单选框等选中状态
!ele.form.submit() = 自动提交表单
!ele.selected = 设置为下拉选框选中项

?.getEle= !ele. 
?.waitEle= !ele. 
ele = !ele.

?.all = !ele. 
!document.write(__/*输入HTML*/) = 将HTML写入网页,允许追加输出
!document.writeln(__/*输入HTML*/) = 将HTML写入网页,并添加换行符,允许追加输出
!document.all(1__/*输入序号*/) = 返回指定的节点
!document.attachEvent("onclick",__/*指定dispath接口*/) = 绑定DOM事件接口
!wb.document = !document.
?wb.getDoc=!document.
?wb.waitDoc=!document.
!wb.getDoc(__/*框架名*/) = 获取文档对象 
!wb.waitDoc(__/*框架名*/) = 等待页页文档对象创建\n并获取文档对象  

!wb.select("控件名字",__/*输入选项索引,或选项值、选项文本*/) = 查找下拉选框的指定选项,选中并返回选项节点
?.select = !ele.

!wb.exec("__") = 执行命令
!wb.exec("__", ) = 执行命令
!wb.exec("__", ,true) = 执行命令
!wb.execEle(ele,"__") = 执行命令
!wb.execEle(ele,"__", ) = 执行命令
!wb.execEle(ele,"__", ,true) = 执行命令
!wb.execWb( __ ) = 执行命令\n命令ID为_OLECMDID_前缀的常量
!wb.execWb( __, ) = 执行命令,并传入参数\n命令ID为_OLECMDID_前缀的常量
!wb.external = @.external={
    __/*输入要公开的成员*/
}
!wb.doScript(.(js脚本) =执行js脚本
!wb.doScript(.(js脚本,框架名称) =执行js脚本
!wb.doScript(.(js脚本,框架名称,脚本语言名称="javascript") =执行js脚本
!wb.body = !ele.
!wb.setRadio("__", 1) = 选定单选按钮 
!wb.setSelect("__", 1,true) = 选定复选按钮,
!wb.getEle("__") =  wb.getEle(id,frame = null)//返回一个节点对像或框架内子节点对像
!wb.getEles("__") = 返回同名的所有节点,例如\nele = wb.getEles("节点名字");\nele(1).setAttribute("属性名字", "修改第一个节点属性值");
!wb.fromPoint(.(x坐标,y坐标) = 自指定的坐标获取节点
!wb.fromPoint(.(x坐标,y坐标,框架名) = 自指定的坐标获取节点
?wb.fromPoint = !ele.
?web.form = !wb.


end intellisense******/
 

 

 /**intellisense()
_DLCTL_DLIMAGES=@0x10/*_DLCTL_DLIMAGES*/
_DLCTL_VIDEOS=@0x20/*_DLCTL_VIDEOS*/
_DLCTL_BGSOUNDS=@0x40/*_DLCTL_BGSOUNDS*/
_DLCTL_NO_SCRIPTS=@0x80/*_DLCTL_NO_SCRIPTS*/
_DLCTL_NO_JAVA=@0x100/*_DLCTL_NO_JAVA*/
_DLCTL_NO_RUNACTIVEXCTLS=@0x200/*_DLCTL_NO_RUNACTIVEXCTLS*/
_DLCTL_NO_DLACTIVEXCTLS=@0x400/*_DLCTL_NO_DLACTIVEXCTLS*/
_DLCTL_DOWNLOADONLY=@0x800/*_DLCTL_DOWNLOADONLY*/
_DLCTL_NO_FRAMEDOWNLOAD=@0x1000/*_DLCTL_NO_FRAMEDOWNLOAD*/
_DLCTL_RESYNCHRONIZE=@0x2000/*_DLCTL_RESYNCHRONIZE*/
_DLCTL_PRAGMA_NO_CACHE=@0x4000/*_DLCTL_PRAGMA_NO_CACHE*/
_DLCTL_NO_BEHAVIORS=@0x8000/*_DLCTL_NO_BEHAVIORS*/
_DLCTL_NO_METACHARSET=@0x10000/*_DLCTL_NO_METACHARSET*/
_DLCTL_URL_ENCODING_DISABLE_UTF8=@0x20000/*_DLCTL_URL_ENCODING_DISABLE_UTF8*/
_DLCTL_URL_ENCODING_ENABLE_UTF8=@0x40000/*_DLCTL_URL_ENCODING_ENABLE_UTF8*/
_DLCTL_NOFRAMES=@0x80000/*_DLCTL_NOFRAMES*/
_DLCTL_FORCEOFFLINE=@0x10000000/*_DLCTL_FORCEOFFLINE*/
_DLCTL_NO_CLIENTPULL=@0x20000000/*_DLCTL_NO_CLIENTPULL*/
_DLCTL_SILENT=@0x40000000/*_DLCTL_SILENT*/
_DLCTL_OFFLINEIFNOTCONNECTED=@0x80000000/*_DLCTL_OFFLINEIFNOTCONNECTED*/
_DLCTL_OFFLINE=@0x80000000/*_DLCTL_OFFLINE*/
_UIFLAG_DIALOG=@0x1/*_UIFLAG_DIALOG*/
_UIFLAG_DISABLE_HELP_MENU=@0x2/*_UIFLAG_DISABLE_HELP_MENU*/
_UIFLAG_NO3DBORDER=@0x4/*_UIFLAG_NO3DBORDER*/
_UIFLAG_SCROLL_NO=@0x8/*_UIFLAG_SCROLL_NO*/
_UIFLAG_DISABLE_SCRIPT_INACTIVE=@0x10/*_UIFLAG_DISABLE_SCRIPT_INACTIVE*/
_UIFLAG_OPENNEWWIN=@0x20/*_UIFLAG_OPENNEWWIN*/
_UIFLAG_DISABLE_OFFSCREEN=@0x40/*_UIFLAG_DISABLE_OFFSCREEN*/
_UIFLAG_FLAT_SCROLLBAR=@0x80/*_UIFLAG_FLAT_SCROLLBAR*/
_UIFLAG_DIV_BLOCKDEFAULT=@0x100/*_UIFLAG_DIV_BLOCKDEFAULT*/
_UIFLAG_ACTIVATE_CLIENTHIT_ONLY=@0x200/*_UIFLAG_ACTIVATE_CLIENTHIT_ONLY*/
_UIFLAG_OVERRIDEBEHAVIORFACTORY=@0x400/*_UIFLAG_OVERRIDEBEHAVIORFACTORY*/
_UIFLAG_CODEPAGELINKEDFONTS=@0x800/*_UIFLAG_CODEPAGELINKEDFONTS*/
_UIFLAG_URL_ENCODING_DISABLE_UTF8=@0x1000/*_UIFLAG_URL_ENCODING_DISABLE_UTF8*/
_UIFLAG_URL_ENCODING_ENABLE_UTF8=@0x2000/*_UIFLAG_URL_ENCODING_ENABLE_UTF8*/
_UIFLAG_ENABLE_FORMS_AUTOCOMPLETE=@0x4000/*_UIFLAG_ENABLE_FORMS_AUTOCOMPLETE*/
_UIFLAG_ENABLE_INPLACE_NAVIGATION=@0x10000/*_UIFLAG_ENABLE_INPLACE_NAVIGATION*/
_UIFLAG_IME_ENABLE_RECONVERSION=@0x20000/*_UIFLAG_IME_ENABLE_RECONVERSION*/
_UIFLAG_THEME=@0x40000/*_UIFLAG_THEME*/
_UIFLAG_NOTHEME=@0x80000/*_UIFLAG_NOTHEME*/
_UIFLAG_NOPICS=@0x100000/*_UIFLAG_NOPICS*/
_UIFLAG_NO3DOUTERBORDER=@0x200000/*_UIFLAG_NO3DOUTERBORDER*/
_UIFLAG_DISABLE_EDIT_NS_FIXUP=@0x400000/*_UIFLAG_DISABLE_EDIT_NS_FIXUP*/
_UIFLAG_LOCAL_MACHINE_ACCESS_CHECK=@0x800000/*_UIFLAG_LOCAL_MACHINE_ACCESS_CHECK*/
_UIFLAG_DISABLE_UNTRUSTEDPROTOCOL=@0x1000000/*_UIFLAG_DISABLE_UNTRUSTEDPROTOCOL*/
_UIFLAG_HOST_NAVIGATES=@0x2000000/*_UIFLAG_HOST_NAVIGATES*/
_UIFLAG_ENABLE_REDIRECT_NOTIFICATION=@0x4000000/*_UIFLAG_ENABLE_REDIRECT_NOTIFICATION*/
_UIFLAG_USE_WINDOWLESS_SELECTCONTROL=@0x8000000/*_UIFLAG_USE_WINDOWLESS_SELECTCONTROL*/
_UIFLAG_USE_WINDOWED_SELECTCONTROL=@0x10000000/*_UIFLAG_USE_WINDOWED_SELECTCONTROL*/
_UIFLAG_ENABLE_ACTIVEX_INACTIVATE_MODE=@0x20000000/*_UIFLAG_ENABLE_ACTIVEX_INACTIVATE_MODE*/
_UIFLAG_DPI_AWARE=@0x40000000/*_UIFLAG_DPI_AWARE*/
_NWMF_UNLOADING=@0x1/*_NWMF_UNLOADING*/
_NWMF_FIRST=@0x4/*_NWMF_FIRST*/
_NWMF_OVERRIDEKEY=@0x8/*_NWMF_OVERRIDEKEY*/
_NWMF_SHOWHELP=@0x10/*_NWMF_SHOWHELP*/
_NWMF_HTMLDIALOG=@0x20/*_NWMF_HTMLDIALOG*/
_NWMF_FROMDIALOGCHILD=@0x40/*_NWMF_FROMDIALOGCHILD*/
_NWMF_USERREQUESTED=@0x80/*_NWMF_USERREQUESTED*/
_NWMF_USERALLOWED=@0x100/*_NWMF_USERALLOWED*/
_NWMF_FORCEWINDOW=@0x10000/*_NWMF_FORCEWINDOW*/
_NWMF_FORCETAB=@0x20000/*_NWMF_FORCETAB*/
_NWMF_SUGGESTWINDOW=@0x40000/*_NWMF_SUGGESTWINDOW*/
_NWMF_SUGGESTTAB=@0x80000/*_NWMF_SUGGESTTAB*/
_NWMF_INACTIVETAB=@0x100000/*_NWMF_INACTIVETAB*/
_CSC_UPDATECOMMANDS=@0xFFFFFFFF/*_CSC_UPDATECOMMANDS*/
_CSC_NAVIGATEFORWARD=@0x1/*_CSC_NAVIGATEFORWARD*/
_CSC_NAVIGATEBACK=@0x2/*_CSC_NAVIGATEBACK*/
_OLECMDID_OPEN=@0x1/*_OLECMDID_OPEN*/
_OLECMDID_NEW=@0x2/*_OLECMDID_NEW*/
_OLECMDID_SAVE=@0x3/*_OLECMDID_SAVE*/
_OLECMDID_SAVEAS=@0x4/*_OLECMDID_SAVEAS*/
_OLECMDID_SAVECOPYAS=@0x5/*_OLECMDID_SAVECOPYAS*/
_OLECMDID_PRINT=@0x6/*_OLECMDID_PRINT*/
_OLECMDID_PRINTPREVIEW=@0x7/*_OLECMDID_PRINTPREVIEW*/
_OLECMDID_PAGESETUP=@0x8/*_OLECMDID_PAGESETUP*/
_OLECMDID_SPELL=@0x9/*_OLECMDID_SPELL*/
_OLECMDID_PROPERTIES=@0xA/*_OLECMDID_PROPERTIES*/
_OLECMDID_CUT=@0xB/*_OLECMDID_CUT*/
_OLECMDID_COPY=@0xC/*_OLECMDID_COPY*/
_OLECMDID_PASTE=@0xD/*_OLECMDID_PASTE*/
_OLECMDID_PASTESPECIAL=@0xE/*_OLECMDID_PASTESPECIAL*/
_OLECMDID_UNDO=@0xF/*_OLECMDID_UNDO*/
_OLECMDID_REDO=@0x10/*_OLECMDID_REDO*/
_OLECMDID_SELECTALL=@0x11/*_OLECMDID_SELECTALL*/
_OLECMDID_CLEARSELECTION=@0x12/*_OLECMDID_CLEARSELECTION*/
_OLECMDID_ZOOM=@0x13/*_OLECMDID_ZOOM*/
_OLECMDID_GETZOOMRANGE=@0x14/*_OLECMDID_GETZOOMRANGE*/
_OLECMDID_UPDATECOMMANDS=@0x15/*_OLECMDID_UPDATECOMMANDS*/
_OLECMDID_REFRESH=@0x16/*_OLECMDID_REFRESH*/
_OLECMDID_STOP=@0x17/*_OLECMDID_STOP*/
_OLECMDID_HIDETOOLBARS=@0x18/*_OLECMDID_HIDETOOLBARS*/
_OLECMDID_SETPROGRESSMAX=@0x19/*_OLECMDID_SETPROGRESSMAX*/
_OLECMDID_SETPROGRESSPOS=@0x1A/*_OLECMDID_SETPROGRESSPOS*/
_OLECMDID_SETPROGRESSTEXT=@0x1B/*_OLECMDID_SETPROGRESSTEXT*/
_OLECMDID_SETTITLE=@0x1C/*_OLECMDID_SETTITLE*/
_OLECMDID_SETDOWNLOADSTATE=@0x1D/*_OLECMDID_SETDOWNLOADSTATE*/
_OLECMDID_STOPDOWNLOAD=@0x1E/*_OLECMDID_STOPDOWNLOAD*/
_OLECMDEXECOPT_DODEFAULT=@0x0/*_OLECMDEXECOPT_DODEFAULT*/
_OLECMDEXECOPT_PROMPTUSER=@0x1/*_OLECMDEXECOPT_PROMPTUSER*/
_OLECMDEXECOPT_DONTPROMPTUSER=@0x2/*_OLECMDEXECOPT_DONTPROMPTUSER*/
_OLECMDEXECOPT_SHOWHELP=@0x3/*_OLECMDEXECOPT_SHOWHELP*/
end intellisense**/

  

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约