我在一个SDK的程序中创建一个Button类,
想在原有Button类的基础上做一些修改,不知应该怎么响应ButtonDown和Up这样的消息??
想在原有Button类的基础上做一些修改,不知应该怎么响应ButtonDown和Up这样的消息??
解决方案 »
- 屏幕取词 hook ExtTextOutW、BitBlt函数,如何获得文本正确的设备坐标
- 新手求助有关MFC界面输入后存储问题!
- 请教在视频上画图不被覆盖的问题
- 修改了了项目栈大小后,如何创建线程?
- Windows 下的一个界面问题,高手请进
- 我公司有个DRV 的界面,要VC++ 设计,请高手兼职做20000元,1月完成
- 下拉按钮的失效!
- listctrl的行高如何设置?在线等待
- 在中文输入法状态下,如何判定当前的回车是确定当前中文的动作还是普通的回车?(2日内结账)
- 如何生成可移动工具条
- 高分求一个小程序(分不够还可以再给)!
- 如何调用CHtmlView的OnDocumentComplete事件?
不过我能找到相关支持只有这个
Knowledge Base Articles
PRB: Bound ListBox Doesn't Show List Item When MultiSelect = 2
--------------------------------------------------------------
The information in this article applies to:
Microsoft Visual Basic Learning Edition for Windows, version 6.0
Microsoft Visual Basic Professional Edition for Windows, version 6.0
Microsoft Visual Basic Enterprise Edition for Windows, version 6.0
Microsoft Visual Basic Standard Edition for Windows, version 4.0
Microsoft Visual Basic Professional Edition for Windows, version 4.0
Microsoft Visual Basic Enterprise Edition for Windows, version 4.0
Microsoft Visual Basic Standard Edition for Windows, version 4.0
Microsoft Visual Basic Professional Edition for Windows, version 4.0
Microsoft Visual Basic Enterprise Edition for Windows, version 4.0
-------------------------------------------------------------------
SYMPTOMS
If you set the MultiSelect property of a bound Standard ListBox control at design time to 2-Extended, and then run the application, you can MultiSelect with CTRL+Click but the control is not bound to the Data control at this time. When you go back into design mode, the MultiSelect property is reset to 0-None, then when you run again, you get the correct behavior.
CAUSE
This is a behavior of Visual Basic. It is not practical to select multiple items from a listbox that is bound to only a single column of a data control. If you set the MultiSelect property of the control to 2-Extended, Visual Basic should reset it back to 0-None before going into run mode, not after it returns from the first run. This way it will not appear that you can almost get MultiSelect to work with a bound listbox. RESOLUTION
Do not set the MultiSelect Property of a bound standard ListBox control to 2-Extended as it will cause this misleading behavior. MORE INFORMATION
Steps to Reproduce Problem in Visual Basic Version 4.0
Start a new project in Visual Basic. Form1 is created by default.
Add a Data control to Form1.
Connect Data1 on Form1 to a table in a database as follows: Select the Data control and press the F4 key to display the Properties window. Set the DatabaseName property to BIBLIO.MDB, and set the RecordSource property to the source table name Publishers.Add a Standard ListBox control to Form1. Select the ListBox control and press the F4 key to display the Properties window. Set the DataSource property to Data1, the DataField property to State, and the MultiSelect property to 2-Extended.Add the following to the Form Load event code:
Private Sub Form_Load()
List1.AddItem "CA"
List1.AddItem "WA"
List1.AddItem "PA"
List1.AddItem "MA"
List1.AddItem "IL"
List1.AddItem "FL"
End Sub
Start the program, or press the F5 key. Click next and previous on the data control and notice how the selection on the listbox does not change even though it is bound to the Data control. You can MultiSelect with CTRL+Click. When you go back into design mode the MultiSelect property is reset to 0-None, then when you run again, you get the correct behavior.Additional query words: kbVBp400 kbVBp600 kbdse kbDSupport kbVBp kbControl
Keywords : kbGrpDSVBDB
Issue type : kbprb
Technology : kbVBSearch kbAudDeveloper kbZNotKeyword6 kbZNotKeyword2 kbVB600Search kbVBA600 kbVB600 kbVB400Search kbVB400
Last Reviewed: January 11, 2001
---------------------------------------------------------------
Send feedback to Microsoft
© 2002 Microsoft Corporation. All rights reserved.
最简单的方法就是在对话框(button的父窗口)中直接处理这两个消息。