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

Вниз

Панелька в стиле AtGuard   Найти похожие ветки 

 
vampire ©   (2002-03-23 20:15) [0]

Многие видели панельку которая родом от программы AtGuard, она располагается ВЫШЕ всех окон, т.е. все посторонние окна находятся под ней...Как такое сделать на Delphi?
Заранее спасибо...


 
Oleg Gashev ©   (2002-03-23 20:49) [1]

SHAppBarMessage

[Now Supported on Windows NT]

Sends an appbar message to the system.

WINSHELLAPI UINT APIENTRY SHAppBarMessage(

DWORD dwMessage ,
PAPPBARDATA pData
);


Parameters

dwMessage

Identifier of the appbar message to send. This parameter can be one of the following values:

ABM_ACTIVATE Notifies the system that an appbar has been activated.
ABM_GETAUTOHIDEBAR Retrieves the handle of the autohide appbar associated with a particular edge of the screen.
ABM_GETSTATE Retrieves the autohide and always-on-top states of the Windows taskbar.
ABM_GETTASKBARPOS Retrieves the bounding rectangle of the Windows taskbar.
ABM_NEW Registers a new appbar and specifies the message identifier that the system should use to send notification messages to the appbar.
ABM_QUERYPOS Requests a size and screen position for an appbar.
ABM_REMOVE Unregisters an appbar, removing bar from the system"s internal list.
ABM_SETAUTOHIDEBAR Registers or unregisters an autohide appbar for an edge of the screen.
ABM_SETPOS Sets the size and screen position of an appbar.
ABM_WINDOWPOSCHANGED Notifies the system when an appbar"s position has changed.


pData

Pointer to an APPBARDATA structure. The content of the structure depends on the value of dwMessage .



Return Values

Returns a message-dependent value. For more information, see the documentation for the individual appbar messages.

See Also

APPBARDATA

(C) Borland Help


 
Oleg Gashev ©   (2002-03-23 20:51) [2]

APPBARDATA

typedef struct _AppBarData { // abd

DWORD cbSize; // sizeof(APPBARDATA)
HWND hWnd; // handle of appbar
UINT uCallbackMessage; // see below
UINT uEdge; // see below
RECT rc; // see below
LPARAM lParam; // see below
} APPBARDATA, *PAPPBARDATA;


Members

uCallbackMessage

Application-defined message identifier. The application uses the specified identifier for notification messages that it sends to the the appbar identified by the hWnd member. This member is used when sending the ABM_NEW message.

uEdge

Flag that specifies an edge of the screen. This member can be one of the following values:

ABE_BOTTOM Bottom edge
ABE_LEFT Left edge
ABE_RIGHT Right edge
ABE_TOP Top edge


This member is used when sending the ABM_GETAUTOHIDEBAR, ABM_QUERYPOS, ABM_SETAUTOHIDEBAR, and ABM_SETPOS messages.

rc

RECT structure that contains the bounding rectangle, in screen coordinates, of an appbar or the Windows taskbar. This member is used when sending the ABM_GETTASKBARPOS, ABM_QUERYPOS, and ABM_SETPOS messages.

lParam

Message-dependent value. This member is used with the ABM_SETAUTOHIDEBAR message.



Remarks

This structure is used with the SHAppBarMessage function.

See Also

SHAppBarMessage

(C) Borland Help


 
Анатолий   (2002-03-25 21:34) [3]

Здравствуйте!
Мне тоже интересен этот вопрос...
только не могу его решить...Можно примерчик того, как это работает? А то не получается что-то...
Буду очень признателен...


 
Анатолий   (2002-03-29 21:48) [4]

Что..нету занчит не у кого примера реализации данной функции?


 
MBo ©   (2002-03-30 12:11) [5]

вот пример, кривоватый, наверно.


var
Form1: TForm1;
MyAppbData: TAppBarData;

procedure TForm1.FormCreate(Sender: TObject);
begin
MyAppbData.cbSize := SizeOf(MyAppbData);
MyAppbData.hWnd := Handle;
MyAppbData.uCallbackMessage := WM_USER + 100;
SHAppBarMessage( ABM_NEW, MyAppbData);
with MyAppbData do
begin
uEdge := ABE_TOP;
rc.Left := 0;
rc.Right := Screen.Width;
rc.Top := 0;
rc.Bottom := 100;
end;
SHAppBarMessage( ABM_SETPOS, MyAppbData);
SetBounds( MyAppbData.rc.Left
, MyAppbData.rc.Top
, MyAppbData.rc.Right - MyAppbData.rc.Left
, MyAppbData.rc.Bottom - MyAppbData.rc.Top);
SHAppBarMessage(ABM_ACTIVATE, MyAppbData);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
SHAppBarMessage( ABM_REMOVE, MyAppbData);
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.009 c
3-32717
onix
2002-03-21 13:24
2002.04.11
Удаление текущей записи из Dataset a


1-32872
Ivann
2002-03-29 14:47
2002.04.11
Как вставить картинку в TStatusbar?


4-33011
Yaro
2002-02-10 21:38
2002.04.11
Принудительное завершение работы программы, не имеющую окна или как получить Хэндл процесса


1-32777
AndrewK
2002-03-28 14:10
2002.04.11
Конвертация таблицы в Excel


1-32852
Anton+
2002-03-29 08:20
2002.04.11
Как создать удалить файл?