Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Shortcut в Menu Добавлено: 07.05.04 04:38  

Автор вопроса:  Maximmal

Необходимо получить сочетание "Клавиш быстрого вызова", которые отражаются на пункте меню (справа)  в виде, например Ctrl + Shift + S, Функция   MyMenuItem.Shortcut.ToString выдает это сочетание в виде CtrlShiftS. Я использую свою функцию :

Public Function convert(ByVal orig_str As String)

Dim res_str As String = orig_str

If orig_str.Chars(0) = "A" Then

res_str = "Alt" & "+" & orig_str.Substring(3)

Return res_str

End If

If orig_str.Chars(0) = "C" Then

If orig_str.Chars(4) = "S" And orig_str.Length > 9 Then

res_str = "Ctrl" & "+" & "Shift" & "+" & orig_str.Substring(9)

Else

res_str = "Ctrl" & "+" & orig_str.Substring(4)

End If

Return res_str

End If

If orig_str.Chars(0) = "S" Then

res_str = "Shift" & "+" & orig_str.Substring(5)

End If

Return res_str

End Function

Может быть есть встроенные методы?

Ответить

  Ответы Всего ответов: 1  

Номер ответа: 1
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #1 Добавлено: 07.05.04 10:43
Не уверен, что тебе это поможет, но все же...

Вообще этот шоткат хранится не где-нибудь, а в самом тексте элемента
меню. Вот так вот:

Вырезать[ControlChars.Tab]Ctrl+X

То есть, сначала идет надпись, потом символ табуляции и текст шотката.
Так, ты можешь туда и свой шоткат запихнуть, какой только фантазия
подскажет, например:

Вырезать[ControlChars.Tab]Alt+Ctrl+Shift+Delete

првада, отлавливать тебе прийдется его уже самому.

Ну ладно, это хорошо.

Теперь про твой вопрос.

Дело в том, что в свойстве Text элемента этого сочетания не видно -
.NEt Framework его прячет.
Чтоб его получить, прийдется использовать ... да, АПИ.

Получить ID пункта меню легко: MenuItem.MenuID

А получить текст - GetMenuItemText

Но, может, это и возможно - использовать для твоиз целей Рег.
выражения...

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам