Затемнение какой-то части экрана (как при Завершении работы)

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
PUNK-GRUNGER
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 145
Зарегистрирован: 10.06.2004 (Чт) 14:22
Откуда: Украина, Николаев

Затемнение какой-то части экрана (как при Завершении работы)

Сообщение PUNK-GRUNGER » 24.06.2004 (Чт) 18:20

ПРивет,
Когда на рабочем столе клацаем Alt+F4, то появляется форма с пунтками выбора "Завершение" и т.д. Остальная же часть экрана затемняется... Кто поможет сделать так, только с моей формой.

Затемнение вручную не предлогать :) Должна быть какая-то Апишка.

P.S. Если это тема обсуждалась - дайте линку или код, а модератор пусть меня накажет плюсометом ;)

P.P.S. По форуму поискал, но ничего стоящего не нашел (или плохо искал).
«Каждому программисту ЭВМ выдает то, что он заслуживает» (c)

CyberYen
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 112
Зарегистрирован: 10.03.2004 (Ср) 18:14

Сообщение CyberYen » 24.06.2004 (Чт) 18:53

Ладно, даффай поэксперементируем вместе...
Никогда не обращал внимания, что после появления диал. окна, типа завершения работы, или завершения сеанса - панель задач, да и остальные проги уже не реагируют на клик мыши?? Или останавливаются часы на панели задач?? :roll:

Короче, ближе к делу.
Прога получает снимок экрана, потом запускается в ПОЛНОЭКРАННОМ режиме, малая часть экрана отводится под наше диал. окошко, остальная часть экрана, вроде-бы такая же, как и раньше... Только это уже снимок :wink:. За тем, ровно через 3 сек. где-то за 4-5 сек. постепенно уменьшается контрасность и насыщенность снимка.

Вообщем, при достаточном умении, такую прогу (затемнения экрана) можно слепить максимум за 30 мин. :wink:

Искал ты может быть и не плохо, но Апишку найдешь врятли. :wink: :wink:

PUNK-GRUNGER
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 145
Зарегистрирован: 10.06.2004 (Чт) 14:22
Откуда: Украина, Николаев

Сообщение PUNK-GRUNGER » 24.06.2004 (Чт) 20:00

Вариант с "ручным" затемнением не подходит. Я уверен, что мелкомягкие сделали какую-то тайную ф-цию :)

Как я это понял... Была у меня программулина одна, типа гейм-мейкера - игрушки делала. И вот там я однажды заметил, что затемняется экран также, как и при завершении сеанса. Сначала, думал - программисты делали такой эффект вручную. Но когда я переустановил Windows ME на XP ... в том же гейм-мекере затемлялись окна... но уже в стиле XP. Т.е. полюбому какая-то функция есть.

Я же не думаю, что программеры делали разные затемнения на разные окна :)
«Каждому программисту ЭВМ выдает то, что он заслуживает» (c)

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 24.06.2004 (Чт) 22:45

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

sebas<-@->mail.ru

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 25.06.2004 (Пт) 12:25

На Desktop накладываешь сетку (черные пикселы в шахматном порядке), потом выводишь окно, модальное на уровне системы.
Lasciate ogni speranza, voi ch'entrate.

Eduard
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 31.08.2003 (Вс) 17:12
Откуда: Эстония

Сообщение Eduard » 25.06.2004 (Пт) 20:45

Я один раз тоже страдал над этим (кстати тоже делал прогу для выключения компа), и решил сделать затемнение, как там в Пуск-Завершение работы..., сделал получилось точно также как там. Ну короче у меня есть исходник, если ещё нужно завтра дам (ссылку).

Eduard
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 31.08.2003 (Вс) 17:12
Откуда: Эстония

Сообщение Eduard » 26.06.2004 (Сб) 15:21

Ну вот как обещал, даю вам ссылки:

Вот собственно сам мой сайт, где есть много чего про VB и конечно мои проги с исходниками:
http://www.zone.ee/vbprogs/

А вот и сам этот исходник (на данный момент это - Shutdown Computer v3.6):
http://www.zone.ee/vbprogs/files/progs/zip/shutdown.zip

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 26.06.2004 (Сб) 15:51

alibek писал(а):выводишь окно, модальное на уровне системы.
alibek, будь добр, напиши, как это сделать? :roll:

PUNK-GRUNGER
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 145
Зарегистрирован: 10.06.2004 (Чт) 14:22
Откуда: Украина, Николаев

Сообщение PUNK-GRUNGER » 27.06.2004 (Вс) 12:02

Спасибо за помощь. Ща будем сетку малювать.
«Каждому программисту ЭВМ выдает то, что он заслуживает» (c)

Eduard
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 31.08.2003 (Вс) 17:12
Откуда: Эстония

Сообщение Eduard » 19.06.2005 (Вс) 12:09

...ай лано не буду нов. топик делать... продолжу по теме...
...как мона сделать из цветноц картинки, черно-белую НО не полностью ч/б а с оттенками серого... ведь в xp shutdown там она не ч/б... вот такойже эффект мне хочеться сделать... чтоь можно было менять степень серости картинки... для плавного перехода... Ваш предложения....
On Fatal Error Resume Next

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 23.06.2005 (Чт) 22:47

Eduard писал(а):...ай лано не буду нов. топик делать... продолжу по теме...
...как мона сделать из цветноц картинки, черно-белую НО не полностью ч/б а с оттенками серого... ведь в xp shutdown там она не ч/б... вот такойже эффект мне хочеться сделать... чтоь можно было менять степень серости картинки... для плавного перехода... Ваш предложения....

Знаю как через GDI+. Надо?
Изображение

Eduard
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 31.08.2003 (Вс) 17:12
Откуда: Эстония

Сообщение Eduard » 25.06.2005 (Сб) 11:52

tyomitch писал(а):Знаю как через GDI+. Надо?

tyomitch конечно нада... хоть что-то будет... а то ваще ничё нету :roll:
On Fatal Error Resume Next

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 25.06.2005 (Сб) 15:14

1. Подключаешь к проекту мою обёртку
2. Пишешь в форме:
Код: Выделить всё
Option Explicit
Dim WithEvents Timer As Timer
Dim Color As Single, Pic As prjGDIplus.Image

Private Sub Form_DblClick()
Color = 1
Timer.Interval = 50
Timer.Enabled = True
Set Pic = CreateImage("\Documents and Settings\All Users\Документы\Мои рисунки\Образцы рисунков\Водяные лилии.jpg")
End Sub

Private Sub Form_Load()
Width = ScaleX(800, vbPixels, vbTwips)
Height = ScaleY(600, vbPixels, vbTwips)
Set Timer = Controls.Add("VB.Timer", "Timer")
End Sub

Private Sub Timer_Timer()
Dim ImageAttributes As New ImageAttributes
ImageAttributes.SetSaturation Color
CreateGraphics(hDC).DrawImageEx Pic, 0, 0, ImageAttributes:=ImageAttributes
Color = Color * 0.8
End Sub

3. Запускаешь проект, даблкликаешь на форме, любуешься эффектом.

Если у тебя не WinXP Rus, то исправь путь к картинке.
Изображение

Eduard
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 31.08.2003 (Вс) 17:12
Откуда: Эстония

Сообщение Eduard » 25.06.2005 (Сб) 15:24

tyomitch де твоя dll-ка, я же её где то видел :roll: ... щас поиск поюзаю на GDI+
On Fatal Error Resume Next

Eduard
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 31.08.2003 (Вс) 17:12
Откуда: Эстония

Сообщение Eduard » 25.06.2005 (Сб) 15:37

ну tyomitch где твой хваленый контрол-то... ваще немогу найти его, я тож его хочу поюзать, там такие возможности описывают про него на форуме :wink:
On Fatal Error Resume Next

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 25.06.2005 (Сб) 18:44

PUNK-GRUNGER писал(а):Вариант с "ручным" затемнением не подходит. Я уверен, что мелкомягкие сделали какую-то тайную ф-цию :)

FTR, такая функция есть, но она не экспортирована. IOW, ты замаешься её разыскивать в каждом билде shell32.dll, а автоматизировать её поиск вряд ли удастся.

PUNK-GRUNGER писал(а):Я же не думаю, что программеры делали разные затемнения на разные окна :)

Получается, делали ;-)
Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 25.06.2005 (Сб) 18:49

Eduard писал(а):ну tyomitch где твой хваленый контрол-то... ваще немогу найти его, я тож его хочу поюзать, там такие возможности описывают про него на форуме :wink:

И как только можно его не найти... http://mix.web.ur.ru/JPEG.zip
Изображение


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot], SemrushBot, Yandex-бот и гости: 116

    TopList  
cron