Форум: "Основная";
Текущий архив: 2002.08.15;
Скачать: [xml.tar.bz2];
ВнизЗамена Windows Explorer Найти похожие ветки
← →
dmur (2002-08-04 13:57) [0]В силу определенных обстоятельств мне приходится писать прогу, заменяющую собой Проводник Windows. В связи с чем у меня возникла масса вопросов, главные и из которых ниже:
1. Как сделать так чтобы окно являющееся Desktop-ом всегда находилось сзади запущенных им же программ (их окон), так как это делает Рабочий стол?
2. Как сделать так чтобы окно являющееся ТaskBar-ом всегда находилось снизу , так как это делает Панель задач?
3. Нет ли у кого исходников некоторого подобия Панели задач?
4. Нет ли у кого документации по данной тематике?
Код должен работать во всех ОС: 95/98/Me/XP/NT4/2000
Заранее благодарен всем ответившим на мои вопросы.
← →
Юрий Зотов (2002-08-04 14:40) [1]Рабочий стол - это и есть Desltop.
Панель задач - это и есть TaskBar.
И то, и другое - это просто окна. Именно Проводник Windows их и создает. А также он создает ярлыки Рабочего стола, Главное меню и прочие элементы пользовательского интерфейса. И управляет контекстным меню для этих элементов. И запускает другие программы, когда мы щелкаем "по ним".
Поэтому Проводник и называется "Пользовательская оболочка Windows". Не будет Проводника - не будет и ничего этого. Ни дектопа, ни таскбара - вообще ничего. Просто пустой экран. И у юзера даже не будет способа запустить какую-то программу.
Если хотите, чтобы все это было - Вашей программе придется взять эти функции на себя. Или дать юзеру другой, Ваш собственный интерфейс.
Вы готовы написать ТАКУЮ программу? И у Вас есть достаточное для этого время?
← →
dmur (2002-08-04 19:50) [2]Готов, тем более, что нужно повторить не все функции проводника, а только некоторые. На самом деле проводник не так уж сложен как кажется.
Меня интересует прежде всего как заставить самодельный рабочий стол все время оставаться "сзади".
← →
Song (2002-08-04 19:53) [3]2dmur (04.08.02 19:50)
SetWindowPos()
P.S. На самом деле бесят люди, которые наоставляют свои вопросы на десятке формуов и, не глядя на ответы на последних, идут спрашивать на другие. Dmur это про Вас тоже.
← →
Юрий Зотов (2002-08-04 20:16) [4]Ну что ж, OK, дерзайте. Либо и правда сделаете, либо убедитесь, что не все так просто. В любом случае польза.
Вот форма, которая всегда остается сзади всех окон, показанных позже нее. Если запустить ее, как Shell... сами понимаете.
type
TForm1 = class(TForm)
private
procedure WMWindowPosChanging(var Message: TWMWindowPosChanging); message WM_WINDOWPOSCHANGING;
end;
procedure TForm1.WMWindowPosChanging(var Message: TWMWindowPosChanging);
begin
with message.WindowPos^ do flags := flags or SWP_NOZORDER;
inherited
end;
← →
dmur (2002-08-04 20:27) [5]Для Юрий Зотов: Спасибо.
Для Song: Насчет людей которые наоставляют свои вопросы на десятке формуов -- я ответил здесь, еще не успев еще прочитать Ваш ответ на www.sources.ru. Так нервно реагировать в любом случае не стоит.
← →
Кулюкин Олег (2002-08-05 09:05) [6]2 dmur
А зачем Вам подменять Эксплорер???
Это путь к погибели (или к геморрою, именно с двумя "ЭР").
Обрисуйте проблемму, может есть способ сделать это иначе, не пытаясь переписать половину ОС.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c