Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.11;
Скачать: CL | DM;

Вниз

Как узнать размер TPopupMenu ?   Найти похожие ветки 

 
Pop   (2005-11-18 04:00) [0]

Я хочу, чтобы по нажатию на кнопку, под ней появлялось это меню.
Но если кнопка слишком сдвинута влево, или вниз, то чтобы меню появлялось сверху или справа от кнопки. Если бы узнать размеры меню, то это можно было бы легко сделать. Или как это можно сделать не зная размеров ?


 
Leonid Troyanovsky ©   (2005-11-18 12:29) [1]


> Pop   (18.11.05 04:00)  

> это можно сделать не зная размеров ?


Дык, оно само делает, в смысле, показа на свободном месте.

--
Regards, LVT.


 
Рор   (2005-11-19 03:39) [2]

Ну, и как определить где это свободное место?


 
gdaujk ©   (2005-11-19 05:53) [3]

Высоту меню можно вычислить, например, так:

PopupMenu1.Items.Count * GetSystemMetrics(SM_CYMENU)

или SM_CYMENUSIZE, сам не знаю...

А вот с шириной сложнее. Можно вызвать GetMenuItemRect, но неизвестно откуда.


 
Рор   (2005-11-20 02:37) [4]


> gdaujk ©   (19.11.05 05:53) [3]
>
> Высоту меню можно вычислить, например, так:
>
> PopupMenu1.Items.Count * GetSystemMetrics(SM_CYMENU)
>
> или SM_CYMENUSIZE, сам не знаю...
>
> А вот с шириной сложнее. Можно вызвать GetMenuItemRect,
> но неизвестно откуда.


Чтож теперь нормально вывести меню, не судьба?


 
Oni   (2005-11-20 02:47) [5]

Так меню вроде само по себе на свободном месте появляется(без телодвижений программиста)


 
Рор   (2005-11-20 06:41) [6]


> Oni   (20.11.05 02:47) [5]
>
> Так меню вроде само по себе на свободном месте появляется(без
> телодвижений программиста)


Если не понимаешь вопроса, то так и скажи.


 
Рор   (2005-11-21 01:49) [7]

А когда меню уже открылось, то как узнать его размер? Или это тоже невозможно?


 
Джо ©   (2005-11-21 01:52) [8]


>  [7] Рор   (21.11.05 01:49)

Сами создаем трудности и героически с ними боремся?



Страницы: 1 вся ветка

Текущий архив: 2005.12.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.029 c
3-1130232135
Ярослав
2005-10-25 13:22
2005.12.11
Отображение в DBGrid поля типа TimeStamp с миллисекундами


5-1116849129
PavelP
2005-05-23 15:52
2005.12.11
Как получить список контролов


3-1130232267
Ega23
2005-10-25 13:24
2005.12.11
could not produce a query plan from the optimizer - что это???


14-1132559681
RaPToRidze
2005-11-21 10:54
2005.12.11
remote desktop


14-1132441218
тень отца Гамлета
2005-11-20 02:00
2005.12.11
Чемпион по AV