Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.13;
Скачать: CL | DM;

Вниз

Шеф на больничном. Делать нечего.   Найти похожие ветки 

 
SergeN   (2003-02-25 10:32) [0]

И вот дурью маюсь.

procedure TForm1.FormCreate(Sender: TObject);
{Начальные установки}
begin
timer1.Enabled:=true;
i:=1;
p1:=150;
p2:=50;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
with im.canvas do
begin
brush.Color:=clgray;
rectangle(0,0,im.clientwidth,im.clientheight);

//system block
//передняя крышка
pen.Width:=0;
brush.Color:=clwhite;
polygon([point(p1,p2),point(p1+100,p2),point(p1+100,p2+200),point(p1,p2+200)]);

//верхняя крышка
brush.Color:=$fffff1;
polygon([point(p1,p2),
point(p1+100,p2),
point(p1+100+round(80*(cos(degtorad(20)))),p2-round(80*(sin(degtorad(20))))),
point(p1+round(80*(cos(degtorad(20)))),p2-round(80*(sin(degtorad(20)))))]);

brush.Color:=$f0f0f0;
polygon([point(p1,p2),
point(p1+100,p2),
point(p1+100+round(5*(cos(degtorad(20)))),p2-round(5*(sin(degtorad(20))))),
point(p1+round(5*(cos(degtorad(20)))),p2-round(5*(sin(degtorad(20)))))]);

//боковая крышка
brush.Color:=$fffff1;
polygon([point(p1+100,p2),
point(p1+100,p2+200),
point(p1+100+round(80*(cos(degtorad(20)))),p2+200-round(80*(sin(degtorad(20))))),
point(p1+100+round(80*(cos(degtorad(20)))),p2-round(80*(sin(degtorad(20)))))]);

moveto(p1+105,p2+3);
lineto(p1+105+round(75*(cos(degtorad(20)))),p2+3-round(75*(sin(degtorad(20)))));

brush.Color:=$f0f0f0;
polygon([point(p1+100,p2),
point(p1+100,p2+200),
point(p1+100+round(5*(cos(degtorad(20)))),p2+200-round(5*(sin(degtorad(20))))),
point(p1+100+round(5*(cos(degtorad(20)))),p2-round(5*(sin(degtorad(20)))))]);


//CD-Rom
//отсек
rectangle(p1+5,p2+5,p1+95,p2+35);

brush.Color:=0;
polygon([point(p1+10,p2+22),
point(p1+90,p2+22),
point(p1+90,p2+10),
point(p1+10,p2+10)]);

//гнездо наушников
brush.Color:=clgray;
ellipse(p1+10,p2+27,p1+15,p2+32);

//кнопки
brush.Color:=clwhite;
ellipse(p1+20,p2+28,p1+28,p2+32);
ellipse(p1+30,p2+28,p1+38,p2+32);

//лоток
brush.Color:=clgray;
polygon([point(p1+15,p2+15),
point(p1+85,p2+15),
point(p1+85-round(a*(cos(degtorad(20)))),p2+15+round(a*(sin(degtorad(20))))),
point(p1+15-round(a*(cos(degtorad(20)))),p2+15+round(a*(sin(degtorad(20)))))]);

brush.Color:=clgray;
polygon([point(p1+85,p2+15),
point(p1+85,p2+20),
point(p1+85-round(a*(cos(degtorad(20)))),p2+20+round(a*(sin(degtorad(20))))),
point(p1+85-round(a*(cos(degtorad(20)))),p2+15+round(a*(sin(degtorad(20)))))]);

//крышка лотка
brush.Color:=$f0f0f0;
polygon([point(p1+10-round(a*(cos(degtorad(20)))),p2+22+round(a*(sin(degtorad(20))))),
point(p1+90-round(a*(cos(degtorad(20)))),p2+22+round(a*(sin(degtorad(20))))),
point(p1+90-round(a*(cos(degtorad(20)))),p2+10+round(a*(sin(degtorad(20))))),
point(p1+10-round(a*(cos(degtorad(20)))),p2+10+round(a*(sin(degtorad(20)))))]);
a:=a+i;
if a=50 then i:=-1;
if a=0 then i:=1;
end;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
timer1.Enabled:=false;
end;

Пояснения: im- это Image;
рекомендуемые размеры im: height=120,width=400;
Timer1.Interval=30;

Просьба: 1.кому делать нечего пожалуйста запустите код и дайте рецензию;
2.может кто подскажет как сделать вращающийся диск на лотке.


 
Думкин ©   (2003-02-25 10:42) [1]

Тебе тоже о больничном подумать надо.... %-)


 
SergeN   (2003-02-25 10:52) [2]

2 Думкин
Да, пожалуй. Наверное у меня гриппер. А как насчёт рецензии...


 
Думкин ©   (2003-02-25 10:54) [3]

работает. Только про a ничего не сказано и ессно моргает. А так - куда расти есть.


 
SergeN   (2003-02-25 11:06) [4]

Исправляюся.

private
{ Private declarations }
a,i,p1,p2:integer;

Как моргает??? А если Timer1.Interval:=10;


 
SergeN   (2003-02-25 11:09) [5]

Неужели у меня зрение как у насекомого?
Точно наверное грипп.


 
Delirium^.Tremens ©   (2003-02-25 11:10) [6]


> Неужели у меня зрение как у насекомого?
> Точно наверное грипп.

Якорь на проц повесь, и у тебя заморгает :-)


 
Думкин ©   (2003-02-25 11:11) [7]

a := ?????????

> Как моргает??? А если Timer1.Interval:=10;

Да хоть 5 - не в этом дело.


 
Думкин ©   (2003-02-25 11:15) [8]

Хотя бы двойной буфер где повесить. Я не из догадливых.


 
SergeN   (2003-02-25 11:16) [9]


> А так - куда расти есть.


Ну хоть за это спасибо! И за то что не опустили тоже. :))


 
Думкин ©   (2003-02-25 11:18) [10]


> SergeN (25.02.03 11:16)
> Ну хоть за это спасибо! И за то что не опустили тоже. :))

Не ну, как это - здесь что урки что-ли? :-)


 
SergeN   (2003-02-25 11:20) [11]


> Хотя бы двойной буфер где повесить. Я не из догадливых.


Туда где не участвует пер. а (если я правильно понял)
Но у меня и без всяких буферов не моргает, хотя и проц-р слабенький.


 
Ketmar ©   (2003-02-25 11:25) [12]

>SergeN (25.02.03 10:32)
пива попей. а то тебя как-то не по детски погребло...

Satanas Nobiscum! 25-Feb-XXXVIII A.S.


 
Думкин ©   (2003-02-25 11:25) [13]


> SergeN (25.02.03 11:20)
> Но у меня и без всяких буферов не моргает, хотя и проц-р
> слабенький

Не от слабости зависит. С графикой во многих вещах от мощности проца мало что зависит. Многие неприятности идут с равным успехом как на Пне166 так и на Пне4. Причем если рисуется хорошо в одном, то как правило и в другом. И наоборот - глючная на 166 графика - глючит и на 4-м. Конечно известные ограничения на фразу наложить надо, но не в приведенном коде.
А пинать - так оно можно - для начала - я бы объект сделал, и вс него бы все сунул - форма только для вывода. И имена бы человеческие дал, ну и... для затравки в общем.


 
SergeN   (2003-02-25 11:37) [14]

2 Ketmar
пиво после работы

И вообще,я то думал что Вы меня из-за цветов пинать будете


 
Ketmar ©   (2003-02-25 11:46) [15]

>SergeN (25.02.03 11:37)
нет, зачем пинать. меня с утра повеселило даже...

Satanas Nobiscum! 25-Feb-XXXVIII A.S.


 
SergeN   (2003-02-25 11:47) [16]

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


 
igorr ©   (2003-02-25 11:50) [17]

Нормально ездит!
Только interval меньше 55 не бывает.


 
Думкин ©   (2003-02-25 11:54) [18]


> igorr © (25.02.03 11:50)
> Нормально ездит!
> Только interval меньше 55 не бывает.

54 например. Атормозить - никто и не говорил, что тормозит. Моргать и тормозить несколько разные вещи.


 
SergeN   (2003-02-25 12:01) [19]

Ну дык я же не волшебник.
Не тормозит и ладно.


 
Думкин ©   (2003-02-25 12:03) [20]


> SergeN (25.02.03 12:01)
> Ну дык я же не волшебник.

А надо бы... Я и говорю, что куда расти есть.... :-)
Я когда в 88-м начал - у меня корабль ракетами плевался. А недавно...


 
SergeN   (2003-02-25 12:18) [21]

Так ведь я с Delphi работаю всего два месяца. И начинал с треугольных кнопок. Это я так, к слову. НЕ хвастаясь :))
Ем "Растишку" и расту, и ещё во сне летаю.


 
Сатир ©   (2003-02-25 14:10) [22]

мля, так твоя прога рисует серый квадрат и потом его непроизвольно моргает?! так шо ж ты раньше молчал??!!


 
SergeN   (2003-02-25 14:21) [23]

Вообщето там ещё что то "моргает" помимо квадрата


 
Труп Васи Доброго   (2003-02-25 14:48) [24]

А мне понравилось! Там какой-то квадратный мужик нарисован, и язык то вытащит, то засунет назад. Я эту картину как ScreenSaver во всём предприятии использовать буду, можно???


 
SergeN   (2003-02-25 15:30) [25]

Могу предоставить и квадратную бабу :))))))))))


 
MC TOL ©   (2003-02-25 15:32) [26]

Привет всем!
Ничего у меня не моргает, Нормально ездит лоток туда-сюда.
Правда, несколлько примитивно все это. Может, в GLScene стоит все сваять? Объем появится, и камерой вокруг операционника покрутить можно будет ;-)...


 
Danilka ©   (2003-02-25 15:47) [27]

SergeN (25.02.03 15:30)
а баба еще зачем?
чтоб мужику жизнь медом не казалась?
или чтоб было куда ему свой язык совать?


 
igorr ©   (2003-02-25 15:53) [28]

>Думкин © (25.02.03 11:54)
>> igorr © (25.02.03 11:50)
>> Нормально ездит!
>> Только interval меньше 55 не бывает.
>54 например.

54 не катит.
Событие от таймера возникает 18,2 раза в секунду.

to Труп Васи Доброго (25.02.03 14:48)
Дык этож крутой скрин сейвер!!!
SergeN - Нахаляву юзать никому не давай!
Кто не согласен - того в орешник!


 
SergeN   (2003-02-25 16:17) [29]

Кстати на счёт GLScen это интересно. Завтра попробую если шефф не выйдет.


 
Думкин ©   (2003-02-27 08:20) [30]


> igorr © (25.02.03 15:53)
> >Думкин © (25.02.03 11:54)
> 54 не катит.
> Событие от таймера возникает 18,2 раза в секунду.

Это вы о чем? В 98-й или в 2000-й? Или как?


 
RV ©   (2003-02-27 08:28) [31]


> Думкин © (27.02.03 08:20)

действительно, лажа какая-то..., ДОС умер нафиг

но чаще чем 50-60 - не получается таймер юзать, асм можно вставить, но через одно место тогда все пойдет...


 
Думкин ©   (2003-02-27 08:31) [32]

Ниже 10-ти не опускал, но работает.


 
RV ©   (2003-02-27 08:36) [33]


> Думкин © (27.02.03 08:31)


тебя обманули :)


 
Думкин ©   (2003-02-27 08:40) [34]

Кто? Я лог вел - там все прописано.


 
RV ©   (2003-02-27 08:43) [35]


> Думкин © (27.02.03 08:40)


как и на заборе :)

ничего не говорю - РС говорит все у тя, парень, нормально, и вот я работаю как ты сказал, но обманывает, гад...


 
Думкин ©   (2003-02-27 08:45) [36]

Шутишь?


 
RV ©   (2003-02-27 08:48) [37]


> Думкин © (27.02.03 08:45)
> Шутишь?


не понял.
Нет интервала такого. По определению ОС винда нет.


 
Думкин ©   (2003-02-27 08:50) [38]

А мультимедиа таймер?


 
RV ©   (2003-02-27 08:55) [39]


> Думкин © (27.02.03 08:50)
> А мультимедиа таймер?

не юзал. юзаю обычный.


 
Думкин ©   (2003-02-27 08:56) [40]


> RV © (27.02.03 08:55)

А я его в основном юзаю.



Страницы: 1 2 вся ветка

Текущий архив: 2003.03.13;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.022 c
14-39574
Centr
2003-01-16 10:32
2003.03.13
Как защитить CD от копирования?


1-39256
Silver_
2003-03-03 16:04
2003.03.13
Вставить DBCheckBox в DBGrid


3-39211
Raph
2003-02-21 21:12
2003.03.13
Таблицы


7-39618
Vcoder
2002-12-28 20:20
2003.03.13
Посекторное чтение диска


1-39374
VD601
2003-03-02 20:39
2003.03.13
Эмуляция Win98 при компиляции.