ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |

21.03.2009, 07:01
|
|
Новичок
Регистрация: 20.03.2009
Сообщений: 13
Провел на форуме: 7458
Репутация:
0
|
|
Димнамическое меню
Доброго времени суток!!! Подскажите пожалуйста, каким образом можно выдернуть caption строки из динамического контекстного меню? Оч надо!!!!!!!!!! Заранее спасибо.
|
|
|

21.03.2009, 11:48
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
Тебе нужно знать дискриптор этого меню. Если знаешь то просто всё.
Код:
var
buf:array[0..255] of char;
menu:hmenu;
x,y:integer;
begin
menu:= дискриптор меню
y:=GetMenuItemCount(menu);
for x:=0 to y-1 do
begin
GetMenuString(menu,x,buf,256,mf_ByPosition);
memo1.lines.add(buf);
end;
Если нужно продолжить выдирать из вложеного меню, то делаешь
GetMenuItemInfo(Menu: HMenu; ID, Flags: Word; Info:TMenuItemInfo)ж
и тогда Info.hSubMenu - будет дискриптором вложенного меню, с которым делаешь всё также что и с предыдущем.
Главное чтобы твоё меню было уже вызвано. т.е. вызываешь его, находиш его дискриптор и вперед
|
|
|

21.03.2009, 11:53
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
P.S. т.е. меню динамическое, то и заполняется при своём появлении, так что дискрипторы будут разные всегда.
|
|
|

21.03.2009, 13:45
|
|
Новичок
Регистрация: 20.03.2009
Сообщений: 13
Провел на форуме: 7458
Репутация:
0
|
|
slesh, Спасибо те! Помог здорово!
|
|
|

21.03.2009, 13:51
|
|
Новичок
Регистрация: 20.03.2009
Сообщений: 13
Провел на форуме: 7458
Репутация:
0
|
|
Еще вопрос. Как во время открытия динамического меню, проверить базу на наличие данных в ячейке?
|
|
|

21.03.2009, 13:54
|
|
Новичок
Регистрация: 20.03.2009
Сообщений: 13
Провел на форуме: 7458
Репутация:
0
|
|
и если ячейка не пуста, тогда отметиь пункт меню(TMenuItem.checked)???
|
|
|

21.03.2009, 20:56
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
Сообщение от Vitaliy-55
и если ячейка не пуста, тогда отметиь пункт меню(TMenuItem.checked)???
CheckMenuItem юзай
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|