Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];




Вниз

Панелька в стиле 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;




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.019 c
1-32846           PEC                   2002-03-29 10:05  2002.04.11  
Привет народ !


3-32645           Makc                  2002-03-19 16:49  2002.04.11  
Проблема с переводом imestamp в более удобочитаемый формат


14-32956          Dimich                2002-03-04 10:25  2002.04.11  
Заземление в учебном классе


1-32903           PlaZZma               2002-03-29 16:52  2002.04.11  
Как избавиться от мигания Image?


14-32982          Merlin                2002-02-20 14:15  2002.04.11  
Объявить МАТ