Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.08.2010, 17:01   #1
Bat{CMD}_Men
Пользователь
 
Аватар для Bat{CMD}_Men
 
Регистрация: 29.03.2009
Сообщений: 91
Вопрос треснутый экран

Как получить эффект треснутого экрана.

Варианты сломать монитор или поместить на форму картинку с чужим треснутым экраном прошу НЕ ПРЕДЛАГАТЬ.

все должно выглядеть так, что на экране проступила трещина.
Bat{CMD}_Men вне форума Ответить с цитированием
Старый 19.08.2010, 17:04   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

В качестве скринсейвера?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.08.2010, 17:50   #3
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Использовать Z не предлагать!.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 19.08.2010, 18:07   #4
ex.cluz
Участник клуба
 
Аватар для ex.cluz
 
Регистрация: 15.01.2010
Сообщений: 1,325
По умолчанию

Телепатия подсказывает мне, что человек хочет рисовать поверх всех окон.
Тогда, например, через HDC.
Пример:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 Canvas:TCanvas;
 ScreenDC:HDC;
begin
 ScreenDC := GetDC(0);
 Canvas:=TCanvas.Create();
 Canvas.Handle:=ScreenDC;
 Image1.Canvas.Copyrect(Rect(0,0,Image1.Width,Image1.Height),Canvas,
        Rect(0,0,Screen.Width,Screen.Height));
 ReleaseDC(0,ScreenDC);
 Canvas.Free;
end;
Потом можно и PNG рисуночек с трещиной поверх скриншота накладывать и его показывать.

Хотите экстрима - копайте в сторону фракталов.
Грибы - они разные. Один тебя накормит, другой тебе кино покажет...
Редактор журнала "
[ПРОграммист]"
Yan's Home Digital Lab

Последний раз редактировалось ex.cluz; 19.08.2010 в 18:13.
ex.cluz вне форума Ответить с цитированием
Старый 19.08.2010, 18:15   #5
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Можно даже не фракталов. Ищем алгоритм рисования молнии, уменьшаем частоту ветвления.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 19.08.2010, 19:31   #6
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Как оно должно в итоге выглядеть? С анимацией? Может Layered окна достаточно будет?

У меня был ScreenMate где-то про футболиста... Он делал "трещины"... Кажется на флеше... Поищу...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 20.08.2010, 01:53   #7
GoodDA
фрилансер
Форумчанин
 
Аватар для GoodDA
 
Регистрация: 18.07.2008
Сообщений: 107
По умолчанию

трещины хреновые, но работают

Код:
procedure next1(ca:tcanvas;x,y,n:integer;dx,dy:integer);
var k,i:integer;
begin
  if n<2 then exit;
  if abs(dx)<>1 then dx:= round(dx/abs(dx));
  if abs(dy)<>1 then dy:= round(dy/abs(dy));
  n:=round(n*0.8);
  ca.MoveTo(x,y);
  x:=x+random(n)*dx;
  y:=y+random(n)*dy;
  ca.LineTo(x,y);
  k:=random(3);
  for i:=1 to k do Next1(ca,x,y,n,dx,dy);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
 Canvas1:TCanvas;
 ScreenDC:HDC;
begin
  ScreenDC := GetDC(0);
  Canvas1:=TCanvas.Create();
  Canvas1.Handle:=ScreenDC;
  next1(Canvas1, Screen.Width div 2, Screen.Height div 2,100,1,1);
  next1(Canvas1, Screen.Width div 2, Screen.Height div 2,100,1,-1);
  next1(Canvas1, Screen.Width div 2, Screen.Height div 2,100,-1,1);
  ReleaseDC(0,ScreenDC);
  Canvas1.Free;
end;
GoodDA вне форума Ответить с цитированием
Старый 10.09.2010, 00:37   #8
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
Смех

Наконец-то нашёл (во вложении)...
Цитата:
Сообщение от GoodDA Посмотреть сообщение
трещины хреновые, но работают
Интересно... Надо попробовать доработать...
Вложения
Тип файла: zip Davids Armageddon.zip (602.0 Кб, 35 просмотров)
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вывод на экран Nikolai_90 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 11 02.05.2012 09:25
Тускнеет экран Betty Компьютерное железо 13 08.05.2009 05:12
Вывод на экран Rifler Паскаль, Turbo Pascal, PascalABC.NET 10 18.07.2008 18:30
О выводе на экран pro-john Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 04.03.2008 19:40