Рабочий Стол

Тема в разделе "WASM.BEGINNERS", создана пользователем Blackbeam, 7 янв 2010.

  1. Blackbeam

    Blackbeam New Member

    Публикаций:
    0
    Регистрация:
    28 дек 2008
    Сообщения:
    960
    Что есть РС?

    насколько хватает моего понимания - это папка, которую показывает
    навороченный ListWiev

    Возникает несколько вопросов -

    1. GetDesktopWindow - чей DC она выдаёт - папки или картинки?

    2. как нарисовать на картинке - навсегда - т.е как её найти и ...

    3. как изобразить чегонить на рабочем столе поверх иконок - вроде бы есть
    исходники

    4. как рисовать, чтобы иконки были "сверху" ?

    5. какие имеются функции и сообщения, связанные с отображением РС ?
     
  2. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    Насколько я знаю - Рабочий Стол это объект Windows. Рабочих столов может быть несколько, но на них хранятся только окна приложений. А иконки на рабочем столе - согласен, ListView.
    По-моему эта ф-я возвращает рабочий стол, на к-м находится указанное окно.
    Рисуем на обоях рабочего стола.
     
  3. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    Ан нет:
    Код (Text):
    1. HWND GetDesktopWindow(VOID);
    The GetDesktopWindow function returns a handle to the desktop window. The desktop window covers the entire screen. The desktop window is the area on top of which other windows are painted.
     
  4. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.625
    Адрес:
    Russia
    http://www.wasm.ru/forum/viewtopic.php?id=33434
    http://www.wasm.ru/forum/viewtopic.php?id=32928
     
  5. tex32

    tex32 New Member

    Публикаций:
    0
    Регистрация:
    24 окт 2009
    Сообщения:
    202
    Кто знает, как правильно поменять расположение иконок на рабочем столе, чтобы они начинали свой путь из правого нижнего угла?
     
  6. Blackbeam

    Blackbeam New Member

    Публикаций:
    0
    Регистрация:
    28 дек 2008
    Сообщения:
    960
    насколько помню хэндл Desktop-а = 0

    что же тогда возвращает GetDesktopWindow?
    по умолчанию в хрюше вроде 1 РС

    Задача, которую нужно решить - научиться рисовать под иконками - вот КМ-плэйер умеет, гад. Недавно чего-то в нём нажал - теперь сворачиваешь в трей а он продолжает показывать киношку во весь рабочий стол - иконки сверху...
     
  7. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.625
    Адрес:
    Russia
    Blackbeam
    да все что угодно, но только извращенно, через инжект как минимум
     
  8. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    У видеопроигрывателей есть такая особ-ть - если сделать скриншот и скопировать его в mspaint... то кадра ты не увидишь - вместо него пустой экран, в к-м все пропадает, как в черной дыре. Эта особенность свящана с элементом управления, с помощью к-го показывается видео. Может здесь играет эта же особенность?
     
  9. Dukales

    Dukales New Member

    Публикаций:
    0
    Регистрация:
    5 июл 2009
    Сообщения:
    199
    Blackbeam
    GetDesktopWindow() != HWND_DESKTOP
    вторая - константа для SetWindowPos() и мб других и относится к любому рабочему столу, а не к текущему.
    наверное можно найти нужное окно (SysListView32) через EnumChildWindows или GetWindow(GetDesktopWindow(), GW_CHILD)
     
  10. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    AndreyMust19
    Active Desktop ?
    Тогда всё в shell32. Он дверь в эксплорер. А так DX вроде поддерживает(в шадове есть стабы для работы с десктопами).
     
  11. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    AndreyMust19
    по-моему, это называется оверлеем. (режим OverlayMixer в Media Player Classic) и с этим не связано точно никак.