Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 03.12.2009
Сообщений: 6

Как определять параметры?

04.12.2009, 20:28. Показов 1207. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем!
Подскажите, пожалуйста, вот есть у меня API функция (например: SetWindowPos), а как мне узнать значения параметров (может не правильно выражаюсь) <ByVal wFlags As Long>, где их взять? И вообще во всех остальных API где эти параметры брать? API Viewer в VB есть, но как определить что - то, а что не то. Я к тому, что как узнать, что это именно к моей функции. Проблема реально встала когда я откопал следующую вещицу (вешает иконку в трэй):

Declare Function Shell_NotifyIconA Lib 'SHELL32' (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Integer

Public Const NIM_ADD = 0
Public Const NIM_MODIFY = 1
Public Const NIM_DELETE = 2
Public Const NIF_MESSAGE = 1
Public Const NIF_ICON = 2
Public Const NIF_TIP = 4

Type NOTIFYICONDATA
cbSize As Long
hWnd As Long
uID As Long
uFlags As Long
uCallbackMessage As Long
hIcon As Long
szTip As String * 64
End Type

Public Function SetTrayIcon(Mode As Long, hWnd As Long, Icon As Long, tip As String) As Long
Dim nidTemp As NOTIFYICONDATA
nidTemp.cbSize = Len(nidTemp)
nidTemp.hWnd = hWnd
nidTemp.uID = 0&
nidTemp.uFlags = NIF_ICON Or NIF_TIP
nidTemp.uCallbackMessage = 0&
nidTemp.hIcon = Icon
nidTemp.szTip = tip & Chr$(0)
SetTrayIcon = Shell_NotifyIconA(Mode, nidTemp)
End Function
Использование:

' Добавить иконку формы в traybar
SetTrayIcon NIM_ADD, Me.hWnd, Me.Icon, 'Test'
' Изменить иконку и tooltip
SetTrayIcon NIM_MODIFY, Me.hWnd, Me.Icon, 'It works!'
' Удалить иконку из traybar'a
SetTrayIcon NIM_DELETE, Me.hWnd, 0&, ''

Ладно, она че-то не прет. Но что за константы NIM_ADD, NIM_DELETE, NIF_ICON и остальные. Откуда они взялись? Мне кажется можно это проще устроить, но для того чтобы сделать, понять это надо. Вот, кстати, где взять эти <ByVal dwMessage As Long> в функции Shell_NotifyIconA?

Огроменное спасибо, с Уважением, Роман.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.12.2009, 20:28
Ответы с готовыми решениями:

Как определять (hd0,0) параметры после hd?
вот не могу понять, как определить числа после hd. Есть виртуальная машина, один винт, разбитый на два диска: С и Е, Д - дивидером ...

нужна программа которая могла бы определять параметры модема такого как Zyxel Omni 56k
очень нужна программа которая могла бы определять параметры модема такого как Zyxel Omni 56k, написанная на преккраснейшем языке...

Как определять ptrdiff_t ?
Данный тип меняется в зависимости от разрядности приложения, есть нечто в сишарпе, если нет, то как выйти из положения? Спасибо.

1
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 14
08.12.2009, 10:23
MSDN
Книжка Эпплмана 'Win32 API и Visual Basic'
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.12.2009, 10:23
Помогаю со студенческими работами здесь

Как автоматически определять текущий месяц и использовать его как дедлайн?
Добрый день! Есть скрипт, который выступает в качестве дедлайна, то есть это конечный срок акции. Дедлайн всегда последнее число...

Как определять симметричные числа?
Дана последовательность целых чисел. Вывести сумму всех симметричных чисел.

Как определять необъявленные переменные в VB?
Как сделать так, что бы VB не присваивал неОбъявленным переменным тип Variant, а ругался, что переменная не определена.

Как определять простые числа
Задача: найти все простые палиндромы до 1000. Код есть. Находит все палиндромы до 1000. Помогите сделать так, чтобы программа проверяла еще...

Как определять разрешение монитора?
Что-то никто не может ответить на мои вопросы:( Помогите(хотя бы) с этим: Как определять разрешение монитора? Можно, конечно,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru