阅读:1963回复:2
MapBasic紧缩表源代码给大家参考!
<IMG src="http://www.gisempire.com/bbs/Skins/Default/topicface/face1.gif" align=absMiddle border=0> <B>紧缩表源代码</B><BR>Include "mapbasic.def"<BR>Include "icons.def"<BR>Include "menu.def"<BR>'***********************************************************<BR>Declare Sub Main<BR>Declare Sub packtable<BR>Declare Sub BatchPackTable<BR>Declare Sub Exit<BR>'***********************************************************<BR>Sub Main<BR> Create Menu "紧缩表" As <BR> "(-", <BR> "紧缩表" +Chr$(9)+"Ctrl+M/W^M" Calling PackTable,<BR> "(-", <BR> "退出"Calling Exit<BR> Alter Menu Bar Add "紧缩表"<BR> Set Window Message Font ("宋体", 0, 10, Blue) <BR>End Sub <BR><BR>
<P>'***********************************************************<BR>Sub PackTable<BR>Dim Ptable,LayName As String<BR>Dim Winid,I,J,LayNums As Integer<BR> Cls<BR> onError GoTo ErrorType<BR> If Not FrontWindow() Then<BR> Note "没有图层,请打开图层......"<BR> Exit Sub<BR> End If<BR> For j=1 To NumWindows()<BR> If WindowInfo(FrontWindow(),Win_Info_Type)<>Win_Mapper Then<BR> Close Window FrontWindow()<BR> Else<BR> Exit For<BR> End If<BR> Next<BR> Winid=FrontWindow()<BR> LayNums=MapperInfo(WinID, Mapper_Info_Layers)<BR> Open File "c:\紧缩完的表.txt" For Output As #2<BR> For I=1 To Laynums <BR> LayName= LayerInfo(WinID,I,Layer_Info_Name)<BR> If LayerInfo(WinID,I,Layer_Info_type)=Layer_Info_Type_Normal Then<BR> Commit Table LayName <BR> Set Map Layer LayName Editable On<BR> Ptable="Pack Table "+LayName+" Graphic Data "<BR> Run Command Ptable<BR> Print "已经将 ("+LayName+") 表紧缩完! "<BR> Print #2, "已经将 ("+LayName+") 表紧缩完! "<BR> If LayNums>1 Then <BR> Add Map Auto Layer LayName<BR> Else <BR> Map From LayName <BR> End If<BR> End If<BR> Next<BR> Close File #2<BR> Note "紧缩完毕!"<BR> Exit Sub<BR> ErrorType:<BR> Exit Sub<BR> Print "操作被取消!"<BR>End Sub<BR>'*********************************************************** <BR>Sub Exit<BR> If Ask("Hi!你是否愿意退出?","是","否") = 1 Then<BR> End Program<BR> End If<BR>End Sub<BR>'*********************************************************** <BR>做大家学习例子</P> |
|
1楼#
发布于:2006-03-18 17:59
<img src="images/post/smile/dvbbs/em05.gif" /><img src="images/post/smile/dvbbs/em06.gif" /><img src="images/post/smile/dvbbs/em07.gif" /><img src="images/post/smile/dvbbs/em08.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em03.gif" /><img src="images/post/smile/dvbbs/em04.gif" /><img src="images/post/smile/dvbbs/em05.gif" />
|
|
|
2楼#
发布于:2005-08-05 09:23
<img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em03.gif" /><img src="images/post/smile/dvbbs/em03.gif" />
|
|