bldrweb.prg
来自「MSComm控件资料,Visual Basic 6.0(以下简称VB) 是一种功」· PRG 代码 · 共 107 行
PRG
107 行
* BldrWeb.prg
#INCLUDE "BuilderB.h"
GenComponentList()
RETURN
FUNCTION GenComponentList
LOCAL lcHTML,lcTablePath,lcFileName,lcClass,lcBaseClass,lcParentClass
LOCAL lcName,lcBuilderHTML,lcBuilderAutoHTML,lcBaseHTML
lcHTML=""
IF NOT oTHIS.oHost.oBuilder.lSource
lcHTML=lcHTML+[<B><FONT SIZE=4>Object not selected.</B></FONT><P>]+CR_LF
oTHIS.uReturn=lcHTML
oTHIS.oHost.oBuilder.lSource=.F.
RETURN
ENDIF
IF NOT USED("BuilderB")
lcHTML=lcHTML+[<B><FONT SIZE=4>Component Library not found.</B></FONT><P>]+CR_LF
oTHIS.uReturn=lcHTML
oTHIS.oHost.oBuilder.lSource=.F.
RETURN
ENDIF
SELECT BuilderB
lcTablePath=LOWER(oTHIS.TrimFile(DBF()))
lcFileName=SYS(1271,oTHIS.oSource)
lcClass=LOWER(oTHIS.oSource.Class)
lcParentClass=LOWER(oTHIS.oSource.ParentClass)
lcBaseClass=LOWER(oTHIS.oSource.BaseClass)
lcName=oTHIS.oSource.Name
lcBuilderHTML=""
lcBuilderAutoHTML=""
lcBaseHTML=""
LOCATE FOR LOWER(ALLTRIM(MLINE(ClassName,1)))==lcBaseClass AND EMPTY(ClassLib)
IF NOT EOF()
lcBaseHTML=ALLTRIM(Text)
ENDIF
LOCATE FOR LOWER(FULLPATH(ALLTRIM(MLINE(ClassLib,1)),lcTablePath))==lcFileName AND ;
LOWER(ALLTRIM(MLINE(ClassName,1)))==lcClass
IF NOT EOF()
lcBuilderHTML=ALLTRIM(Text)
ENDIF
IF NOT PEMSTATUS(oTHIS.oSource,"Name",1)
lcHTML=lcHTML+[{{@INPUT SIZE=32,Name:,oTHIS.oSource.Name}}<BR>]+CR_LF
ENDIF
lcHTML=lcHTML+[Class: ]+oTHIS.oSource.Class+[ (]+lcFileName+[)<BR>]+CR_LF
IF NOT EMPTY(lcParentClass) AND NOT lcParentClass==lcBaseClass
lcHTML=lcHTML+[ParentClass: ]+lcParentClass+ ;
[ (]+LOWER(oTHIS.oSource.ClassLibrary)+[)<BR>]+CR_LF
ENDIF
lcHTML=lcHTML+[BaseClass: ]+oTHIS.oSource.BaseClass+[<BR>]+CR_LF
IF NOT EMPTY(lcBuilderHTML)
lcHTML=lcHTML+[<HR>]+lcBuilderHTML+CR_LF
ENDIF
lcBuilderAutoHTML=GetAutoHTML()
IF NOT EMPTY(lcBuilderAutoHTML)
lcHTML=lcHTML+[<HR>]+lcBuilderAutoHTML+CR_LF
ENDIF
IF NOT EMPTY(lcBaseHTML)
lcHTML=lcHTML+[<HR>]+lcBaseHTML+CR_LF
ENDIF
oTHIS.uReturn=lcHTML
SELECT 0
ENDFUNC
FUNCTION GetAutoHTML
LOCAL lcHTML,lcLabel,lcProperty,lnWidth,lcProperty,lnMemLine,lcMemLine,lnLastMLine,lnAtPos
lcHTML=""
lnLastMLine=_mline
_mline=0
FOR lnMemLine = 1 TO MEMLINES(Links)
lcMemLine=ALLTRIM(MLINE(Links,1,_mline))
IF EMPTY(lcMemLine)
LOOP)
ENDIF
lcObjName=LOWER(SYS(2015))
lcLabel=ALLTRIM(lcMemLine)
lcProperty=""
lnWidth=0
lnAtPos=AT(",",lcLabel)
IF lnAtPos>0
lcProperty=ALLTRIM(SUBSTR(lcLabel,lnAtPos+1))
lcLabel=ALLTRIM(LEFT(lcLabel,lnAtPos-1))
ENDIF
IF EMPTY(lcProperty)
LOOP
ENDIF
lnAtPos=AT(",",lcProperty)
IF lnAtPos>0
lnWIdth=VAL(SUBSTR(lcProperty,lnAtPos+1))
lcProperty=ALLTRIM(LEFT(lcProperty,lnAtPos-1))
ENDIF
lcHTML=lcHTML+[{{@INPUT ]+IIF(lnWidth#0,[SIZE=]+ALLTRIM(STR(lnWidth))+[ ,],[,])+lcLabel+[,]+ ;
[oTHIS.oSource.]+lcProperty+[}}<BR>]+CR_LF
ENDFOR
_mline=lnLastMLine
RETURN lcHTML
ENDFUNC
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?