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

Вниз

Определить открыто ли popup меню   Найти похожие ветки 

 
гость2   (2005-12-14 20:07) [0]

Сабж?


 
Button1Click   (2005-12-14 23:18) [1]


procedure TForm1.Button1Click(Sender: TObject);
begin
 caption := "PopupMenu открыто";
 PopupMenu1.Popup(left+100,top+ 100);
 Caption := "PopupMenu закрыто";
end;


 
<code>   (2005-12-16 15:29) [2]


function IsPopUpMenuOpen(h:HWnd):Boolean;
var  p:TWindowPlacement;
begin
 p.Length:=SizeOf(TWindowPlacement); //это нужно только что бы win95 не падала
 GetWindowPlacement(h,@p);
 if (byte(@p.showCmd)shr 7)=1 then result:=false else result:=true;
end;


if IsPopUpMenuOpen(PopupMenu1.Handle) then beep;


 
wal ©   (2005-12-16 15:30) [3]


> if (byte(@p.showCmd)shr 7)=1 then result:=false else result:=true;
Круто :)


 
гость2   (2005-12-17 19:34) [4]


> function IsPopUpMenuOpen(h:HWnd):Boolean;
> var  p:TWindowPlacement;
> begin
>  p.Length:=SizeOf(TWindowPlacement); //это нужно только
> что бы win95 не падала
>  GetWindowPlacement(h,@p);
>  if (byte(@p.showCmd)shr 7)=1 then result:=false else result:
> =true;
> end;
>
>

Всегда возвращает false :(


 
begin...end ©   (2005-12-17 20:36) [5]

> гость2

var
 R: TRect;
begin
 GetMenuItemRect(0, PopupMenu.Handle, 0, R);
 if not IsRectEmpty(R) then
   // открыто
end

Возможно, чушь написал -- тогда прошу прощения. Немного не в себе.


 
<code>   (2005-12-18 00:33) [6]

 
         //работает только если меню открылось над формой
function IsPopUpMenuOpen(h:HWnd):Boolean;
var  p:TWindowPlacement;
begin
p.Length:=SizeOf(TWindowPlacement); //это нужно только что бы win95 не падала
GetWindowPlacement(h,@p);
if (Pbyte(@p.showCmd)^=SW_SHOWNOACTIVATE) then result:=true else result:=false;
end;



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

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

Наверх




Память: 0.45 MB
Время: 0.007 c
2-1135196659
Scrol
2005-12-21 23:24
2006.01.08
Поиск


14-1134380249
Piter
2005-12-12 12:37
2006.01.08
Умер Роберт Шекли


14-1134661370
Bogdan1024
2005-12-15 18:42
2006.01.08
Дуглас Коупленд "Рабы Майкрософта"


2-1134926705
Silica
2005-12-18 20:25
2006.01.08
Объясните, пожалуйста


3-1131619501
Дмитрий_Б
2005-11-10 13:45
2006.01.08
MultiSelect в Гриде





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский