VipCat | Дата: Четверг, 26 Января 2012, 11:27 | Сообщение # 1 |
PHP-MasteR
Сейчас нет на сайте
| Как сделать чтобы поссле завершения проги на экране фулл скрином вылезла картинка?
Проблемы индейцев - вождя не волнуют....
|
|
| |
kvestpro | Дата: Четверг, 26 Января 2012, 22:20 | Сообщение # 2 |
заслуженный участник
Сейчас нет на сайте
| да вы товарищ злодей однако... кто же вам насолил? в одной теме хард снести решили, а теперь что? гей-порно фулл скрином?Добавлено (26.01.2012, 22:20) ---------------------------------------------
Инверсная кинематика в Unity Алгоритм поиска пути Jump Point Search
|
|
| |
TimKruz | Дата: Пятница, 27 Января 2012, 22:52 | Сообщение # 3 |
старожил
Сейчас нет на сайте
| Не совсем ясно, что именно требуется... Вывести картинку после выхода из программы - значит потерять над ней контроль, и, как следствие, допускать полное её стирание другими окнами. Самый простой способ, при котором программы видно не будет, но будет выводиться картинка, при чём непрерывно: создай новый проект, выбрав в меню File - New - Other... - Console Application, потом, удалив всё из окна редактора, и скопируй следующее: Code uses windows, graphics; //Обязательные модули для использования WinAPI и графики var display:HDC; image:tbitmap; //Указатель на экран и объект для хранения картинки begin image:=tbitmap.Create; //Создаём объект для хранения картинки image.LoadFromFile('картинка.bmp'); //Загружаем картинку из файла display:=getdc(0); //Создаём указатель //Далее бесконечно выводим картинку из объекта на экран. while true do bitblt(display,0,0,image.Width,image.Height,image.Canvas.Handle,0,0,SRCCOPY); end. У функции BitBlt следующие параметры: указатель на принимающий объект, координаты на принимающем, размеры картинки по ширине и высоте, указатель на передающий объект, координаты на передающем объекте, тип копирования (SRCCOPY - просто скопировать). В данном случае мы выводим картинку определённого размера в точку (0;0) экрана. Чтобы она не стиралась окнами, заключаем эту операцию в цикл (можно и без цикла, или цикл определённой длительности). Программу из примера после запуска (не из среды Delphi, в ней можно нажать Ctrl+F2 для останова) можно убрать только через диспетчер задач. Чтобы вывести на весь экран, нужно просто загрузить картинку размером с экран. Картинку можно упаковать в exe, для этого с помощью Image Editor'а создай res-файл (файл ресурсов), в нём - bmp-картинку, сохрани рядом с исходником программы, в программе, где-нибудь в начале, например, после uses или после var, допиши: {$R название.res}, где название - название res-файла. Вместо image.LoadFromFile() напиши image.LoadFromResourceName(HInstance, 'имя картинки в файле ресурсов') для загрузки по имени или image.LoadFromResourceID(HInstance, номер) для загрузки по идентификатору (если других картинок нет, то 0).
|
|
| |