|
|
|
Как влезть в контекстное меню
|
|||
|---|---|---|---|
|
#18+
Кто-то может подсказать мне как влезть в контекстное меню.Меню который появиться при правом клике на файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 20:55:44 |
|
||
|
Как влезть в контекстное меню
|
|||
|---|---|---|---|
|
#18+
А поподробнее? Что за меню, с какой целью влезть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 10:41:47 |
|
||
|
Как влезть в контекстное меню
|
|||
|---|---|---|---|
|
#18+
А вот действительно, как туда влезть. Ситуция такова: 1. Есть контекстное меню с несколькими уровнями, созданное ассистентом бейсика (буду его дальше материть статическим). 2. Возникла необходимость на одну из этих менюх вызывать меню следующих уровней, причём строиться они должны динамически - из базы данных. Тут необходимо применение API-функций, поскольку речь идёт о меню вложенных уровней. Ну это вобщем нормально функционирует. Но: 3. Единственная проблема: можно ли как-то обеспечить "плавный" переход от менюх жёстко созданных ассистентом к менюхам, созданным динамически? Ну то есть статическое меню (при создании которого ассистентом подменю не предусматривались) должно иметь стрелку-указатель на подменю и по этой стрелке должно выплывать следующее (уже динамическое)меню, именно выплывать, когда курсор стоит на соответствующем пункте. То есть стандартно себя вести. Можно конечно сделать вызов динамического меню на щелчок статического меню, но как-то это некрасиво выглядит. Да и непривычно - ведь меню высшего уровня после щелчка исчезает... 4. Можно ли вообще как-нибудь получить handler меню, созданного при помощи ассистента бейсика? Согласен, изврат это всё - но таковы требования реальности. Возможно ли это вообще: совмещать в бейсике-6 статически созданные контекстные меню с их динамическими детками? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 13:32:58 |
|
||
|
Как влезть в контекстное меню
|
|||
|---|---|---|---|
|
#18+
4. Я делал так: hMenu = GetMenu(hwnd) hSubMenu1 = GetSubMenu(hMenu, 0) Ремарка: меню должно быть видимым... не для popup'а... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 14:20:39 |
|
||
|
Как влезть в контекстное меню
|
|||
|---|---|---|---|
|
#18+
спасибо за отклик. у меня как раз popup... hMenu = GetMenu(hwnd) вот тут я тоже вижу проблему (п.4 моего посланья). Вот этот hwnd - этож и есть хэндлер. Манипулятор. Вот могу ли я получить манипулятор для меню, которое создано при помощи бейсиковского ассистента? И как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 14:37:09 |
|
||
|
Как влезть в контекстное меню
|
|||
|---|---|---|---|
|
#18+
нет, у менюшек другой класс, это типа "не окна виндоус", которые имеют хэндл. Манипулятор бейсиковского (да и любого другого!) меню получить можно через хендл окна, которому оно принадлежит. Как я и написал. А бейсиковский ассистент его создал, или - нет, не важно, один и тот же класс в результате создается в системе... С поп-ап сложнее, они манипулятор тоже получают от виндов, но после первого "появления". Я похожую проблему решил так - видимое меню сгородил на дополнительной, невидимой форме... Отсюда: сразу есть его манипулятор... по хендлу невидимой формы. А уж поп-ап менюшки от второй формы делал на первой тсандартными средствами, гы. :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 16:26:38 |
|
||
|
Как влезть в контекстное меню
|
|||
|---|---|---|---|
|
#18+
спасибо. а что, это тоже выход! Ну у меня в данный момент уже есть рабочий вариант, но он мне не очень нравится. Как я писал: на щелчок на видимом статическом попапе вываливается уже динамически построенное подменю со всеми его уровнями. Оно-то живое, работает, только вот после щелчка, когда нарисовывается это динамическое меню, его статический "папа" исчезает... что выглядит вобщем-то неестественно. Если все уровни, начиная с первого, динамически построить - оно нормально пашет, но тут я не свободен, т.к. уже имеются несколько функцирующих пунктов меню (со своими поменюшками) на этом узле (в тривью всё происходит), которые трогать нельзя и которые построены статически. Мне необходимо добавить новый пункт в то же меню первого уровня, и деток этого нового пункта уже надо строить динамически. Говорю ж: изврат. Но в любом случае спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 16:52:52 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=33360003&tid=2166919]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 339ms |

| 0 / 0 |
