Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.014 c
4-1130670520
Максим
2005-10-30 14:08
2006.01.08
Слежение за процессами


4-1130767725
RomeoGolf
2005-10-31 17:08
2006.01.08
Свернуть дочернее окно в панель задач


14-1134368247
syte_ser78
2005-12-12 09:17
2006.01.08
Посоветуйет локальный чат.


10-1111046230
LgcPiton
2005-03-17 10:57
2006.01.08
Как узнать заущено ли приложение


4-1130680933
GuAV
2005-10-30 17:02
2006.01.08
Printer.Canvas с LOGPIXELSX <> LOGPIXELSY, что с Pen.Width ?




   Наверх