![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сделать мою форму позади всех? [D6, Win95/98, WinME, NT4, Win2k, WinXP]
NikNet © (2005-09-26 16:47:00)А также как сделать что бы при сворачиваний
сворачивоалсь не в TaskBar?
DVM (2005-10-05 10:16:00) [1]
> А как без этой ф-ций выставить и что бы все элементы на
> форме работали!
http://hardware.org.ru/faq/answ.php?id=4415
NikNet (2005-10-04 16:05:00) [2]DVM © (04.10.05 10:34) [22]
А я та думаю чё он не работает =)
А как без этой ф-ций выставить и что бы все элементы на форме работали!
Ато сколько не дают не работают!
DVM (2005-10-04 10:34:00) [3]
> Что-то она не работает... :(
И не будет, так как ты неправильно ее используешь.
1) Работать она будет только в отсутствии эксплорера или др оболочки.
2) Окно должно быть создано на WinAPI, т.к. с VCL окнами она почему-то (я не разбирался почему) не работает.
NikNet (2005-10-03 17:12:00) [4]DVM © (03.10.05 10:14) [20]
Что-то она не работает... :(
<офтоп> Почту смотрел </офтоп>
DVM (2005-10-03 10:14:00) [5]
> NikNet © (02.10.05 12:29) [19]
function SetShellWindow(Handle: HWND): HWND; stdcall; external 'User32.dll';
NikNet (2005-10-02 12:29:00) [6]DVM © (26.09.05 17:27) [3] А где взять этот SetShellWindow?
NikNet (2005-09-29 06:19:00) [7]DVM © (28.09.05 10:29) [17]Ну и какой толк от неё?
Может даш? Я разбирусь а как сделаю так и тебе дам (Исходник)
NikNet@yandex.ru
DVM (2005-09-28 10:29:00) [8]
> NikNet ©
вот готовый экзешник (не самый новый, но уже достаточно функциональный), пароль там 3141592653
Запускать лучше закрыв эксплорер, но можно и вместе с ним.
инсталляция как шелл myshell.exe -install, удаление myshell -uninstall
http://213.33.194.5/files/shell.zip
DVM (2005-09-28 10:16:00) [9]
> Мог бы и поделится :(
Советом пожалуйста, некоторыми функциями пожалуйста, но готовой разработкой - не вижу смысла ни для себя ни для тебя (половину там ты не поймешь все равно, без обид)
NikNet (2005-09-27 18:34:00) [10]DVM © (27.09.05 13:43) [12]
Зря ты меня не слушаешь, поверь уж мне
Мог бы и поделится :(
DVM (2005-09-27 13:52:00) [11]
> Но вообще-то работать все это должно только в винде (т.е.
> с эксплорером?). Не в винде обработчик сообщения должен
> быть другой (если вообще есть сообщения). нельзя ли подробней,
> что означает "нет эксплорера"?
Он хочет шелл (эксплорер) заменить своим. А за анимацию сворачивающегося окна в произвольный прямоугольник на экране отвечает именно структура передающаяся с HSHELL_GETMINRECT
umbra (2005-09-27 13:49:00) [12]
> все сворачивающие окна поподали в мой ТоллБар
procedure TForm1.SysCommand(var Msg: TWMSysCommand);
begin
if (Msg.CmdType <> SC_MINIMIZE) then
inherited;
if Msg.CmdType = SC_MINIMIZE then
begin
Hide;
Enabled := false;
{добавляем на тулбар кнопку и сохраняем где-нибудь ссылку на окно,
соответствующее кнопке}
end;
end;
После этого окно скроется (и из панели задач) и перестанет обрабатывать сообщения.
Для кнопок на тулбаре в обработчике щелчка мышкой берем ссылку на соответствующее окно и пишем
procedure ToolButtonclick(............);
begin
Windowref.Enabled := true;
Windowref.Show;
end;
Но вообще-то работать все это должно только в винде (т.е. с эксплорером?). Не в винде обработчик сообщения должен быть другой (если вообще есть сообщения). нельзя ли подробней, что означает "нет эксплорера"?
DVM (2005-09-27 13:43:00) [13]
> Теперь надо сделать
> что бы все сворачивающие окна поподали в мой ТоллБар
>
> Как это сделать!
HSHELL_GETMINRECT + WH_SHELL + RegisterShellHookWindow()
> И ещё из кокого контрола создан ТрайИкон?
Из чего сделан ТрайИкон я не знаю, потому как на таскбаре нет такого окна, а вот окно области уведомлений в Win2000/xp сделано из ToolBar, в Win98/95 это просто окно, безо всяких контролов иконки отрисовываются прямо на нем.
> только вот приходится все что сверрху делать самому!
Ну-ну. Зря ты меня не слушаешь, поверь уж мне, человеку много времени потратившему на написание шеллов, подобных эксплореру - непростая это задача.
Antonn (2005-09-27 13:40:00) [14]NikNet © (27.09.05 13:36) [10]
почему-то мне кажется, что для вас это задача, на данный момент, трудновата. может стоит написать блокнот?
NikNet (2005-09-27 13:36:00) [15]DVM © (27.09.05 10:30) [9]
Хватит! Я уже нашол компонент ТаскБар точно такой же как и Винь
только вот приходится все что сверрху делать самому!
Сделал быстрый запуск программ! Теперь надо сделать
что бы все сворачивающие окна поподали в мой ТоллБар
Как это сделать!
И ещё из кокого контрола создан ТрайИкон?
DVM (2005-09-27 10:30:00) [16]
> А как все свернутые окна поместить в ToolBar? учытывая
> что Explorer(а) нет!
Я уже ответил, ты и будешь продолжать спрашивать тупо одно и то же?
Имхо за непосильную задачу взялся.
> учытывая что Explorer(а) нет!
На год работы примерно.
NikNet (2005-09-26 20:25:00) [17]umbra © (26.09.05 19:31) [7]А как?
umbra (2005-09-26 19:31:00) [18]Если надо при сворачивании окон вообще их убирать и создавать соответствующие кнопки на тулбаре в другом окне, то тогда, в общем, делать надо не совсем так.
umbra (2005-09-26 19:21:00) [19]
> Explorer(а) нет!
В каком смысле?
NikNet (2005-09-26 19:07:00) [20]А как все свернутые окна поместить в ToolBar? учытывая что Explorer(а) нет!