VB中可以用消息机制吗?

mmzz_wang 2003-06-04 03:53:28
VB中可以用消息机制吗?如果可以,怎么用?
...全文
90 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
hiker_lx 2003-06-04
  • 打赏
  • 举报
回复
不知道,你要怎样的消息。
VB中主要有三种方式建立消息(我们常用的窗体消息,这里不作介绍)。
1.使用Addressof登记一个函数去管理特定消息。该方式主要用于处理回调函数。但是由于VB不支持指针,所以不能用该操作符来编写调用回调函数的服务(Service)程序。
2.使用类事件。
hc_z 2003-06-04
  • 打赏
  • 举报
回复
可以创建一个类模块,在窗体中用 witevents使用这个类模块,就可以接受该模块发送的消息了。
mmzz_wang 2003-06-04
  • 打赏
  • 举报
回复
我用PostMessage()向一个窗体发了一个自定义消息WM_USER+10,但不知道窗体那边该怎样处理?如何映射消息?
ipqn 2003-06-04
  • 打赏
  • 举报
回复
当然可以
要用到API函数,就如同上边说的!
我不重复了哦!
mmzz_wang 2003-06-04
  • 打赏
  • 举报
回复
我用PostMessage()向一个窗体发了一个自定义消息WM_USER+10,但不知道窗体那边该怎样处理?如何映射消息?
shuicai 2003-06-04
  • 打赏
  • 举报
回复
哦。自定义啊。你只要添加自定义消息代码。

消息处理里面多一个Case项。

其他的时候你用Sendmessage可以个你的窗口发自定义消息。
shuicai 2003-06-04
  • 打赏
  • 举报
回复
可以。
你声明系统Api然后调用Api实现.

比如SendMessageBox

Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

比如结构Point

Type POINT
x As Long
y As Long
End Type

Public Const WM_SHOWWINDOW = &H18

这些可以通过ApiView来做

不过你的先设置好的程序启动为Sub Main
project->(your projectname properties) ->general->startup 设置为Sub main

然后开一个模块编写全局的

HANDLE hInstance;
Sub main()
{
wndclass wcls;
registerwindow()...
......................

}

WindowProc()
{
....message process.
}



mmzz_wang 2003-06-04
  • 打赏
  • 举报
回复
我是说自定义消息

7,763

社区成员

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

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