📄 拓扑关系.mb
字号:
include "MapBasic.def"
include "ICONS.def"
include "MENU.def"
declare sub main
Declare SUB 对话框
Declare SUB 记录数
dim W0$,W1$,D1$(1200),D2$(1200),M1$,ZC$,O$,DH$,O1$ as string
Dim R,R0,R1,R2,R3,I,J,N,N1 as smallint
Dim X1 AS FLOAT
SUB main
ZC$="注册表"
OPEN TABLE "D:\地理信息\水资源\其他图层\徐州市乡镇信息"
Commit Table 徐州市乡镇信息 As W0$+ZC$+".TAB" TYPE NATIVE Charset "WindowsSimpChinese"
OPEN TABLE ZC$
Call 记录数
fetch rec 1 from ZC$ R2=2 'R2为一级菜单的所在列
D1$(1)=注册表.COL(R2)
R=1
FOR I=1 TO N
fetch rec I from ZC$
O$=注册表.COL(R2)
FOR J=1 TO R
IF O$=D1$(J) THEN GOTO b05 END IF
NEXT
R=R+1
D1$(R)=O$
b05:NEXT
M1$=""
FOR I=1 TO R
M1$=M1$+";"+D1$(I)
NEXT N1=R
R=LEN (M1$)
M1$=MID$(M1$,2,R-1)
Call 对话框
IF R0=0 THEN EXIT SUB END IF
Note D1$(R0)
FOR I=1 TO N
D2$(I)=""
NEXT
R1=1
FOR I=1 TO N
fetch rec I from ZC$
O$=注册表.COL(R2)
if o$=D1$(R0) then
D2$(R1)=注册表.COL(R2-1)
R1=R1+1
end if
NEXT
Note D2$(R1)
END SUB
SUB 记录数
SELECT COUNT(*) FROM ZC$ INTO LIT_QUERY fetch rec 1 from LIT_QUERY N=LIT_QUERY.col(1)
END SUB
SUB 对话框 R0=0 IF N1>=18 THEN X1=18*9 END IF IF N1<18 THEN X1=N1*9 END IF
dialog
title DH$+O1$+" 本次有"+N1+"个对象供您选择" position 380,340
control listbox title M1$ width 170 height X1
position 5,5 into R0
control okbutton title "确定" control cancelbutton title "取消"
IF R0=0 THEN 'Call R00 Close All Interactive
EXIT SUB END IF
END SUB
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -