如题,最好用API实现
解决方案 »
- 怎样将一个自定义函数写入SQL 数据库的"用户定义的函数"中?
- 请教VB调用VC组件时候数据类型转换的问题
- lsitbox控件能显示多列的信息吗?
- 用VB+ADO连接Sysbase数据库时候用where 不能查询到中文字符串条件的记录
- 取得outlook/out look express /msn/foxmail 的联系人邮件地址
- 动态数组的简单问题
- 如何获取fpSpread中的一行记录
- :求解:在双击某一类型文件(如后缀名为.ABC)时,怎样把该文件中的数据自动装载到应用程序(如DKABC.EXE)中的一个变量里?
- 这是什么错误呢?!
- !!help!!!怎样使一个窗体,始终处于所有窗体的上面?
- 图片存入数据库和读出的问题
- SQL
'Private Const CCM_FIRST = &H2000
'Private Const CCM_SETBKCOLOR = (CCM_FIRST + 1)
'Private Const TB_SETBKCOLOR = CCM_SETBKCOLOR
Const TV_FIRST As Long = &H1100
'Private Const TVM_SETBKCOLOR As Long = (TV_FIRST + 10)
Private Const TVM_SETBKCOLOR As Long = (TV_FIRST + 29)
Private Declare Function SetBkColor Lib "gdi32" (ByVal hdc As Long, ByVal crColor As Long) As LongPrivate Sub Form_Load()
SendMessage TreeView1.hwnd, TVM_SETBKCOLOR, 0, ByVal RGB(128, 128, 255)
'SendMessage StatusBar1.hwnd, TB_SETBKCOLOR, 0, ByVal RGB(128, 128, 255)
End Sub
Const TV_FIRST As Long = &H1100
Const TVM_SETBKCOLOR As Long = (TV_FIRST + 29)
为什么定义这两个常量,+29是什么意思?
http://www.vbaccelerator.com/home/VB/Code/Controls/TreeView/TreeView_Control/article.asp
拥有所有正常 treeview 的功能,还可以使用 winxp treeview 的新功能
Const TVM_SETBKCOLOR As Long = (TV_FIRST + 29)这两个常量是 treeview 规定的。
29是什么意思?就是定义另外一个消息,这样简单一些(TV_FIRST + 29),只需要记住一个就够了
Const TVM_SETBKCOLOR As Long = (TV_FIRST + 29)即是:Const TVM_SETBKCOLOR As Long = &H111D
Declare Function SendMessage& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)
Declare Function SendMessageBynum& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long)
Declare Function SendMessageByString& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String)
说明
调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, SendMessageByString是该函数的“类型安全”声明形式
返回值
Long,由具体的消息决定
参数表
参数 类型及说明
hwnd Long,要接收消息的那个窗口的句柄
wMsg Long,消息的标识符
wParam Long,具体取决于消息
lParam Any,具体取决于消息