已知一窗体句柄,怎样执行该窗体中的过程呢?

leoxue 2003-11-09 03:27:41
已知一窗体句柄,怎样执行该窗体中的过程呢?
比如我在form1中有一过程abc,form2中知道form1.hwnd,有什么办法或者API可以在form2中执行form1中的abc呢?

直接写form1.abc是不行的,因为form2是公用的,其中不可以把'form1'写死的,而是要根据取到的hwnd进行执行的。

谢谢大家了
...全文
19 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
有哥 2003-11-09
  • 打赏
  • 举报
回复
如果那个句柄属于别一个程序,不大可能那样,除非它能接收系统消息广播。
要是两个程序都是自己做的话,可以让它先注册一个消息钩子,然后其它程序发送系统消息给它,它接收系统消息做出反应,我在BCB中常用这种方法结合互斥量来避免程序的多个实例运行,VB中不太熟悉,你可以从这方面想想。
cngo 2003-11-09
  • 打赏
  • 举报
回复
不用模块也可以!
把Form1中的abc过程声明成 Public ,在Form2中就可以直接引用(form1.abc)了。

还可以声明一个 Form1类型的变量,通过变量来访问abc(abc也要申明成公共成员)
since1990 2003-11-09
  • 打赏
  • 举报
回复
up
南方的他 2003-11-09
  • 打赏
  • 举报
回复
添加模块,将过程放到模块里公用。
rainstormmaster 2003-11-09
  • 打赏
  • 举报
回复
把form1中的过程abc放到模块中就行了,用句柄干什么??


如果,你想调用其他程序的功能的话,仅仅知道句柄也是不能实现的

7,762

社区成员

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

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