powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Амперсанд (&) в тесте Tooltip в System Tray
2 сообщений из 2, страница 1 из 1
Амперсанд (&) в тесте Tooltip в System Tray
    #38491194
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вывожу иконку в трей через Shell_NotifyIcon function с использованием NOTIFYICONDATA structure
И хочу чтоб у меня в базовом ToolTip (на XP) отображалось:
Black & White Software
(присутствует амперсанд)
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Private Sub InitTrayIcon()
  'код вывода иконки в трей
  Dim nid As NOTIFYICONDATA
  With nid
    .cbSize = IIf(IsWinVista, Len(nid), NOTIFYICONDATA_V3_SIZE)
    .hwnd = Me.hwnd
    .uID = vbNull
    .uFlags = NIF_ICON Or NIF_MESSAGE Or NIF_TIP
    .uCallbackMessage = WM_MySysTrayNotify 'WM_MOUSEMOVE через Form_MouseMove не годится
    .hIcon = lngIconTray
    .szTip = "Black & White Software" & vbNullChar 'для XP
    .uTimeoutAndVersion = NOTIFYICON_VERSION_4
  End With
  Shell_NotifyIcon NIM_ADD, nid 'добавляем иконку в трей
  Shell_NotifyIcon NIM_SETVERSION, nid 'на XP вернет false и работаем как NOTIFYICON_VERSION_3
End Sub



Хрена с два, амперсанд не отображается.
Такие варианты не помогли.
Код: vbnet
1.
2.
3.
    .szTip = "Black && White Software" & vbNullChar 'для XP

    .szTip = "Black " & Chr(38) & " White Software" & vbNullChar 'для XP



Методом тыка добился таки желаемого:
Код: vbnet
1.
    .szTip = "Black &&& White Software" & vbNullChar 'для XP


Т.е. надо 3 амперсанда подряд чтоб нарисовался один.
А если хочешь нарисовать 2, т.е.
Black && White Software
то надо ставить +2, т.е. 5 подряд а не 6
Код: vbnet
1.
    .szTip = "Black &&&&& White Software" & vbNullChar 'для XP



В документации к .szTip вообще ничего про это не говорится:
szTipType: TCHAR[64]

A null-terminated string that specifies the text for a standard tooltip. It can have a maximum of 64 characters, including the terminating null character.

For Windows 2000 and later, szTip can have a maximum of 128 characters, including the terminating null character.

Есть этой фигне научное-документальное объяснение?
...
Рейтинг: 0 / 0
Амперсанд (&) в тесте Tooltip в System Tray
    #38492570
Фотография VladConn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,

Да, это баг.

https://bugs.eclipse.org/bugs/show_bug.cgi?id=188271
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Амперсанд (&) в тесте Tooltip в System Tray
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]