yuance
路人甲
路人甲
  • 注册日期2004-01-29
  • 发帖数143
  • QQ
  • 铜币504枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1110回复:0

Help! 奇怪,请大虾们指点迷经(VB+mapx)

楼主#
更多 发布于:2004-02-02 21:36
各位高手请赐教,运行后怎么不会出现结果,Why? 急待你们的解围!谢谢!!!
Declare Function MoveToEx Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, lpPoint As POINTAPI) As Long
Declare Function LineTo Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
Declare Function SetMapMode Lib "gdi32" (ByVal hdc As Long, ByVal nMapMode As Long) As Long
Type POINTAPI
x As Long
y As Long
End Type
Public Const MM_TWIPS = 6
Private Sub Map1_DrawUserLayer(ByVal Layer As Object, ByVal hOutputDC As stdole.OLE_HANDLE, ByVal hAttributeDC As stdole.OLE_HANDLE, ByVal RectFull As Object, ByVal RectInvalid As Object)
Dim lyr As Layer
Set lyr = Map1.Layers.AddUserDrawLayer("My Layer", 4)
Dim pt As POINTAPI
SetMapMode hdc, MM_TWIPS
Dim PX As Single
Dim PY As Single
X1 = -111.0542
Y1 = 45.0009
X2 = -104.0528
Y2 = 41.0018
If Map1.ClipLine(X1, Y1, X2, Y2) Then
Map1.ConvertCoord PX, PY, X1, Y1, miMapToScreen
MoveToEx hdc, PX, -PY, pt ' win api call
Map1.ConvertCoord PX, PY, X2, Y2, miMapToScreen
LineTo hdc, PX, -PY ' win api call
End If
End Sub
<img src="images/post/smile/dvbbs/em09.gif" /><img src="images/post/smile/dvbbs/em09.gif" />
喜欢0 评分0
游客

返回顶部