Главная страница
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.48 MB
Время: 0.019 c
14-1134409915
Джо
2005-12-12 20:51
2006.01.08
GUI и цена программы


6-1127123265
Sam05
2005-09-19 13:47
2006.01.08
Работа с Сокетами


2-1135142913
Wood
2005-12-21 08:28
2006.01.08
Про Application.MessageBox...


2-1135167066
dera
2005-12-21 15:11
2006.01.08
Как скрыть (но не закрыть) окно чужого приложения?


2-1134833592
dude
2005-12-17 18:33
2006.01.08
что в Delphi называется словом ?