Мастера DELPHI, Delphi programming community Рейтинг@Mail.ru Титульная страница Поиск, карта сайта Написать письмо 
| Новости |
Новости сайта
Поиск |
Поиск по лучшим сайтам о Delphi
FAQ |
Огромная база часто задаваемых вопросов и, конечно же, ответы к ним ;)
Статьи |
Подборка статей на самые разные темы. Все о DELPHI
Книги |
Новинки книжного рынка
Новости VCL
Обзор свежих компонент со всего мира, по-русски!
|
| Форумы
Здесь вы можете задать свой вопрос и наверняка получите ответ
| ЧАТ |
Место для общения :)
Орешник
Коллекция курьезных вопросов из форумов
Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / rsdn.org

 
Чтобы не потерять эту дискуссию, сделайте закладку « предыдущая ветвь | форум | следующая ветвь »

Затемнение иконки


Sheleh   (15.03.15 16:57

Как сделать затемнение иконки как в ХР на рабочем столе при выделении?
Иконки храню в PImageList, вывожу c помощью DrawIconEx.


QAZ   (17.03.15 16:18[1]

это делает сам листвью с учетом текущих настроек пользователя
т.е. ты идешь не тем путем


Sheleh   (17.03.15 18:11[2]

ListView не подходит по некоторым причинам. Не допер как переносить произвольно иконки. Ну и что-то еще там меня не устроило.
В итоге сделал в виде прозрачных панелей с ручной отрисовкой: DrawIcon, DrawText. Перенос панелей вообще получился своеобразным, перед переносом отрываю панель от родителя (SetParent(wnd,0)) ставлю свойства LayeredWindow на прозрачность по цвету плюс альфа-канал. По окончании переноса прикрепляю обратно. Выглядит не плохо. В wine чуть хуже из-за того что альфа-прозрачность не поддерживается. За то очень просто запоминать расположение. Выравниваю по сетке в конце перетаскивания.
Все как у людей )


Dimaxx ©   (17.03.15 23:46[3]

Иконки в ListView переносятся сами, там ничего не надо самому делать. Кстати, Рабочий стол винды - это ничто иное как ListView. Реализовывать перемещаемые иконки как панели - жесть. :)


Sheleh   (18.03.15 02:27[4]

> Иконки в ListView переносятся сами.
Хоть убей, не нашел таких функций у этого компонента, да и в КОЛ-буке тоже по перенос ничего не сказано.


Dimaxx ©   (18.03.15 20:35[5]

Да, у КОЛа ничего нет, нужно ручками. Помнится, какой-то ListView по умолчанию в режиме Icon давал мышкой таскать итемы в произвольные места. VCL'овский тоже по умолчанию не дает таскать.


Sheleh   (19.03.15 04:12[6]

Как их таскать, если у них ни Left ни Top нету? По-моему с панелями даже проще получилось. Визуально не отличишь KOL ListView от моей реализации. Только при выделении, у меня только фон затемняется без иконки.


Dimaxx ©   (19.03.15 19:26[7]

>> Как их таскать
Обрабатывать Drag&Drop.

>> у них ни Left ни Top нету
Кто сказал? Прежде чем что-то утверждать, смотрим WinAPI (о этом я уже говорил в теме про меню) - LVM_GETITEMPOSITION, LVM_SETITEMPOSITION/LVM_SETITEMPOSITION32.


QAZ   (20.03.15 12:47[8]


> Только при выделении, у меня только фон затемняется без иконки.

а ты не пробовал пользоваться виндами отличными от хр?
или менять настройки цвета в тойже хр?
это я к слову о твоих страданиях про "неотличимо" и "аналогично"

чую будет изобретен велолагопед


Sheleh   (20.03.15 19:18[9]

Спасибо за ваши слова. Это, наверное, самая лучшая поддержка. Виндами я пользовался от 95 до 10. Но лучше 2003 32 PAE ничего нет. Имхо.


QAZ   (20.03.15 20:35[10]


> Sheleh   (20.03.15 19:18) [9]

и что, не заметил что в виндах старше ХР иконка не выделяется?
советую курить листвью
или ты открытые папки тоже будешь на панелях рисовать?


Sheleh   (21.03.15 03:24[11]

Заметил. И это тут при чем? И не "старше", а млачше. Просто думал, есть простой способ затемнить. Необходимо заложить функциональность будь то с затемнением, или просто с изменением фона, в зависимости от желания пользователя.

В проводнике у мну лист вью.

Да и что такого в этих панелях. Листвью разве без подложек в воздухе рисует. Каждая иконка - кнопка, каждая кнопка - окно. Так и панель - такое же окно. Врят ли я проигрываю с быстродействием или памятью.


QAZ   (22.03.15 19:36[12]


> И не "старше", а млачше

ну если 7ка или 8ка млачше то ок

> Необходимо заложить функциональность будь то с затемнением,
>  или просто с изменением фона, в зависимости от желания
> пользователя.

необходимо кому, кроме тебя?
не поверишь - людям пофиг будет эта иконка темнеть или нет, им нужен только сам факт выделения
особо радуют поделки где вместо чего полезного, автор пихает настройку всякой чепушни, типа цветов, шрифтов, прозрачностей, скинов и тд

> Каждая иконка - кнопка, каждая кнопка - окно

ууу, с такими познаниями точно, будет шитдевр
обожаю "прогеров", вообще не шарящих в виндах, но зато тестящих все в Wine :)
обязательно скачаю с рутрекера, думаю это будет даже круче легендарной "вагонки"


Sheleh   (22.03.15 20:15[13]

>ну если 7ка или 8ка млачше то ок
У меня всего лишь опечатка, а говорить, что 7-ка или 8-ка старше формально неверно

>необходимо кому, кроме тебя?
Linux оболочки глубоко настраеваемые, и раз так сделано, стало быть это было кому-то необходимо.

>особо радуют поделки где вместо чего полезного, автор пихает настройку всякой чепушни, типа цветов, шрифтов, прозрачностей, скинов и тд
Для этого не обязательно делать гуи, пусть все настройки лежат в профильных ini.

>ууу, с такими познаниями точно, будет шитдевр
Что за троллинг? Я не корчу из себя супер-программиста. На ВинАпиай пишу впервые, и чего-то могу и не знать. Но мне нравится моя поставленна задача. Я получаю знания и удовольствие от процесса ее реализации. И я не пытаюсь самоутвердится выливая помои высокомерия на тех, чьи знания не дотягивают до моего уровня. И Вы, пожалуйста, вместо конструктивной критики, с разъяснением принципиально неверных моментов, не скатывайтесь до откровенных оскорблений.


Sheleh   (22.03.15 20:20[14]

>обязательно скачаю с рутрекера
https://yadi.sk/d/N1zyD3fpfSQAG


QAZ   (22.03.15 20:50[15]


> Linux оболочки глубоко настраеваемые, и раз так сделано,
>  стало быть это было кому-то необходимо.

на самом деле, в то время когда не было опенофиса, гимпа и блендера, линукс юзали только суровые небритые очкарито, единственно чем они могли себя занять так это клепанием оболочек со 150 вариаций "нескучных как в винде" стилей, дабы хоть как-то  привлеч пользователя

блин ты просто не в курсе, весь этот форум основан с самого начала на тролинге у высокомерии :)


Sheleh   (22.03.15 21:36[16]

Там, кстати, удерживая Control, можно ресайзить таскбар и его содержимое


версия для печати

Написать ответ

Ваше имя (регистрация  E-mail 







Разрешается использование тегов форматирования текста:
<b>жирный</b> <i>наклонный</i> <u>подчеркнутый</u>,
а для выделения текста программ, используйте <code> ... </code>
и не забывайте закрывать теги! </b></i></u></code> :)


Наверх

  Рейтинг@Mail.ru     Титульная страница Поиск, карта сайта Написать письмо