![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
WM_SYSCOMMAND [D6, WinXP]
Дубинин Алексей © (2003-11-13 22:41:00)
SendMessage(Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0); Таким образом можно заставить некое приложение свернуться в трей. А если оно не хочет сворачиваться, хотя должно. Каким образом еще можно заставить.
Т.е. например, можно для закрытие приложения использовать SendMessage(Handle, WM_SYSCOMMAND, SC_CLOSE, 0);, а можно TerminateProcess();
Заранее спасибо.
Иван Шихалев (2003-11-16 12:44:00) [1]
> Я конечно понимаю, что посылаю его дочернему окну,
> ведь это MDI-приложение...
Понимаешь? Вот и славненько. Есть такая функция -GetParent()- последовательным ее применением можно найти окно приложения...
Дубинин Алексей (2003-11-14 22:50:00) [2]
Короче поясния всем сразу. Код приводить...странно...привел в самом начале... sendMessage(Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0); И ошибок то как раз нету... Получается так, что в Word-е щелкаю на область где пишут текст и он не сворачивается. Пишу ShowWindow(Handle, SW_MINIMIZE); Ураа!! свернулся...ага...а другие программы только на панель задач. Почему я должен их сворачивать в трей. Ничего подобного...они сами обрабатывают сообщения. По идее все правильно...посылаю WM_MINIMIZE программа ловит это сообщение и обрабатывает как ему надо. В частности с MyIE. Но вот Word-у посылаю, он не хочет. Я конечно понимаю, что посылаю его дочернему окну, ведь это MDI-приложение... Отсюда следует мой вопрос...как же мне свертывать такие приложения.
Заранее спасибо.
DVM (2003-11-14 16:49:00) [3]
Еще можно ShowWindowAsync();
> а MyIE не стал сворачиваться в трей, только на панель задач.
> Ёлки палки...
Чтобы он сворачивался, как Вы говорите в "трей", окно надо не сворачивать, а прятать и еще кто-то (ваша программа) должен поместить иконку в область уведомлений. Просто так свернуть программу в "трей" нельзя. Нет таких функций.
Prov (2003-11-14 10:32:00) [4]
Не угодило ему и всё тут... У меня к стати, тоже такое было, посему я использовал ShowWindow
DillerXX (2003-11-14 10:04:00) [5]
Что-то не понял, чем тебе SendMessage неугодило?
Игорь Шевченко (2003-11-14 00:41:00) [6]
Дубинин Алексей © (13.11.03 23:18)
Люди, которые хотят, чтобы им помогли, приводят код, который у них не работает. Отвечающих тоже надо уважать.
Prov (2003-11-13 23:39:00) [7]
Дык в чём же ещё трабл то ? Чего-то я не пойму.... Что не получается ?
Дубинин Алексей (2003-11-13 23:18:00) [8]
Ну вот. Теперь Word сворачивается как надо, а MyIE не стал сворачиваться в трей, только на панель задач. Ёлки палки...
Prov (2003-11-13 23:07:00) [9]
хе-хе... А вот так не хочешь ?::: ShowWindow(WD, SW_MINIMIZE);
Я писал свой диспетчер задач, и успешно сворачивал окна так..
Дубинин Алексей (2003-11-13 22:48:00) [10]
Ну да, точно. Я так и хотел сказать. Извиняюсь. Даже стыдно как то. Ну да ладно, бывает.
Что надо, подробнее: Да вот как можно все таки свернуть окно на панель задач не используя SendMessage?
Prov (2003-11-13 22:42:00) [11]
Оно по твоей команде не свораыивается в трэй, а свораивается на панель задач... Что надо поподробнее...