给你个参考代码:Public Property Let Caption(sCaption As String) Dim i As Integer, j As Integer i = InStrRev(sCaption, "&") Do While i If Mid$(sCaption, i, 2) = "&&" Then i = InStrRev(i - 1, sCaption, "&") Else j = i + 1: i = 0 End If Loop If j Then AccessKeys = Mid$(sCaption, j, 1) ...... PropertyChanged "Caption" End Property
愁死啦,不行啊!!!控件caption为:查找(&F) 代码: Public Property Let Caption(ByVal NewCaption As String) '快捷键功能 Dim i As Integer, j As Integer i = InStrRev(NewCaption, "&") Do While i If Mid$(NewCaption, i, 2) = "&&" Then i = InStrRev(i - 1, NewCaption, "&") Else j = i + 1: i = 0 End If Loop If j Then AccessKeys = Mid$(NewCaption, j, 1)
是自定义控件吗?
Dim i As Integer, j As Integer i = InStrRev(sCaption, "&")
Do While i
If Mid$(sCaption, i, 2) = "&&" Then
i = InStrRev(i - 1, sCaption, "&")
Else
j = i + 1: i = 0
End If
Loop If j Then AccessKeys = Mid$(sCaption, j, 1)
......
PropertyChanged "Caption"
End Property
最主要的是Controls的AccessKeys属性。
是的。设置caption为:打开(&O)后就有了ALT+O的快捷键。
CanGetFocus=True
ForwardFocus=False
代码:
Public Property Let Caption(ByVal NewCaption As String) '快捷键功能
Dim i As Integer, j As Integer
i = InStrRev(NewCaption, "&")
Do While i
If Mid$(NewCaption, i, 2) = "&&" Then
i = InStrRev(i - 1, NewCaption, "&")
Else
j = i + 1: i = 0
End If
Loop
If j Then AccessKeys = Mid$(NewCaption, j, 1)
m_sCaption = NewCaption
PropertyChanged "Caption"
UserControl_Resize
Refresh
End Property程序运行之后alt+F还是不行啊~~~~
ForwardFocus=False
这二个属性是要自己编写吗?还是继承来的?
能不能把你的程序代码中这一部分详细资料传过来参考一下,谢谢了。
[email protected]