Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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;



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

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

Наверх





Память: 0.46 MB
Время: 0.007 c
1-32801
B_A_V
2002-04-01 10:05
2002.04.11
Строка кода больше 255 символов, как быть?


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


1-32731
rog
2002-03-30 09:06
2002.04.11
Событие OnkeyDown


1-32862
AlexBeliy
2002-03-29 12:45
2002.04.11
DLL


1-32781
Rooman
2002-03-23 17:54
2002.04.11
Отсылка сообщения через зад:)





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский