DDE!

eithur 2002-10-08 10:12:09
工程叫p1,form1 picDDE
form1.linktopic="form1"
Option Explicit
Private Sub Form_LinkExecute(CmdStr As String, Cancel As Integer)
If CmdStr = "Max" Then
Me.WindowState = 2
Else
End If
End Sub
Private Sub Form_Load()
If App.PrevInstance Then
Me.LinkTopic = "" ' 这两行用于清除新运行的程序的DDE服务器属性,
Me.LinkMode = 0
picDDE.Circle (10, 10), 10
LinkAndSendMessage "Max"
End
Else
picDDE.Circle (10, 10), 30
End If

End Sub
Private Sub LinkAndSendMessage(ByVal Msg As String)
Dim t As Long
picDDE.LinkMode = 0 '--
picDDE.LinkTopic = "p1|Form1" ' |______连接DDE程序并发送数据/参数
picDDE.LinkMode = 2 ' | “|”为管道符,是“退格键”旁边的竖线,
picDDE.LinkExecute Msg '-- 不是字母或数字!
t = picDDE.LinkTimeout '--
picDDE.LinkTimeout = 1 ' |______终止DDE通道。当然,也可以用别的方法
picDDE.LinkMode = 0 ' | 这里用的是超时强制终止的方法
picDDE.LinkTimeout = t '--

End Sub
...全文
195 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
eithur 2002-10-08
  • 打赏
  • 举报
回复
加了个on error 其中变量a是用来跟踪程序的流程的,要注意观察它的值。
Option Explicit
Private Sub Form_LinkExecute(CmdStr As String, Cancel As Integer)
Dim a
On Error GoTo l001
a = "777"
If CmdStr = "Max" Then
a = "888"
Me.WindowState = 2
a = "999"
Else
a = "101010"
End If
l001: Me.Caption = a
End Sub
Private Sub Form_Load()
Dim a
On Error GoTo l001
Me.LinkTopic = "Form1"
a = "111"
Me.LinkMode = 1
a = "222"
If App.PrevInstance = True Then
Me.LinkTopic = "" ' 这两行用于清除新运行的程序的DDE服务器属性,
a = "333"
Me.LinkMode = 0
a = "444"
LinkAndSendMessage "Max"
a = "555"
End
a = "666"
Else
End If
l001: Me.Caption = a
End Sub
Private Sub LinkAndSendMessage(ByVal Msg As String)
Dim t As Long
picDDE.LinkMode = 0 '--
picDDE.LinkTopic = "p1|Form1" ' |______连接DDE程序并发送数据/参数
picDDE.LinkMode = 2 ' | “|”为管道符,是“退格键”旁边的竖线,
picDDE.LinkExecute Msg '-- 不是字母或数字!
t = picDDE.LinkTimeout '--
picDDE.LinkTimeout = 1 ' |______终止DDE通道。当然,也可以用别的方法
picDDE.LinkMode = 0 ' | 这里用的是超时强制终止的方法
picDDE.LinkTimeout = t '--
End Sub

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧