Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как сделать лампочку


Страницы:   1 2 3

Denver ©   (2008-09-04 09:29:00) 

как сделать в дельфи лампочку маленькую, чтобы true-зеленая, false-красная??? Заранее спасибо.


Ega23   (2008-09-04 10:54:00) [21]


> Ega23 лично для тебя! За 100$ я Цветомузыку напишу.


Поймать тебя на слове, что-ли? Чтобы думал в следующий раз, прежде чем мысль из головы извлечь. Да и за базар научился отвечать, заодно...
Даже $100 не жалко на такое, чесслово...


oldman   (2008-09-04 10:51:00) [22]


> Denver ©   (04.09.08 10:42) [20]
> oldman идея хорошая я наверное так и напишу, а как мне это
> привязать к булевскому значению?


if картинка.left := 0 then a:=true else a:=false;

и наоборот


brother   (2008-09-04 10:46:00) [23]

> Vlad Oshin ©   (04.09.08 10:44)

расщедрился? а как же обучение? поиск в гугле, изучение объектов итд?)


Vlad Oshin   (2008-09-04 10:44:00) [24]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls, DB, ADODB, AppEvnts;

type
 TForm1 = class(TForm)
   Button2: TButton;
   Button3: TButton;
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
 private
   NeZakolebalsja:boolean;
 end;

 tLampochka=class(tComponent)
   private
     FOn:boolean;
     Image:tImage;
     procedure OnOff(V:boolean);
     function Gorit:boolean;
   public
    Constructor UkrastUSosedaPokaUNegoVGostjahIzTualeta(aOwner:tComponent);
    Destructor PrishelSosedVGostyISdelalTakge;
    Property LOff:boolean read Gorit write OnOff;
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
L:tLampochka;
begin
NeZakolebalsja:=false;
L:=tLampochka.UkrastUSosedaPokaUNegoVGostjahIzTualeta(form1);
repeat
  if L.Gorit
   then L.LOff:=false
   else L.LOff:=true;
  sleep(100);
  application.ProcessMessages;
until NeZakolebalsja;
L.PrishelSosedVGostyISdelalTakge;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  NeZakolebalsja:=true;
end;

{ tLampochka }

Constructor tLampochka.UkrastUSosedaPokaUNegoVGostjahIzTualeta(aOwner:tComponent);
begin
 inherited;
 Image:=tImage.Create(nil);
 image.Visible:=false;
 Image.Parent:=tWinControl(aOwner);
 image.Left:=1;
 image.Top:=1;
 Image.Picture.LoadFromFile('c:\1.bmp');
 image.Visible:=true;
end;

function tLampochka.Gorit: boolean;
begin
 if FOn
  then result:=true
  else result:=false;
end;

procedure tLampochka.OnOff(V:boolean);
begin
 FOn:=V;
 if FOn
  then Image.Picture.LoadFromFile('c:\1.bmp')
  else Image.Picture.LoadFromFile('c:\2.bmp');
end;

destructor tLampochka.PrishelSosedVGostyISdelalTakge;
begin
 FreeAndNil(Image);
 inherited;
end;

end.


Denver   (2008-09-04 10:42:00) [25]

Ega23 лично для тебя! За 100$ я Цветомузыку напишу.

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

brother можно в принципе и не объект, но опять же мне надо чтобы было .Lit=false или .Lit=true


Медвежонок Пятачок   (2008-09-04 10:38:00) [26]

Тогда вопрос напрямую как мне взять часть картинки, и назначить свойство типа Lit, который я указывал до этого?

Имаджлист тебе в руки


brother   (2008-09-04 10:38:00) [27]

что ты так к объекту прицепился а?


oldman   (2008-09-04 10:32:00) [28]


> Denver ©   (04.09.08 10:30) [15]


Повесить на форму TImage размером 11х11, а картинку 22х11 двигать внутри его.


Ega23   (2008-09-04 10:30:00) [29]

$100 - и ты счастливый обладатель компонента "Светофор".


Denver   (2008-09-04 10:30:00) [30]

Тогда вопрос напрямую как мне взять часть картинки, и назначить свойство типа Lit, который я указывал до этого?


brother   (2008-09-04 10:19:00) [31]

> а битмапа у меня картинка 22*11, где 11*11 это лампочка
> красная, а след. 11*11 это лампочка зеленая

а почему ты это не сказал сразу? партизан или как? почему мы гадать должы? излагай все сразу...
создавай объект, назначай свойство, и вперед...


Медвежонок Пятачок   (2008-09-04 10:10:00) [32]

имаджлист тебе в руки


Denver   (2008-09-04 10:09:00) [33]

а битмапа у меня картинка 22*11, где 11*11 это лампочка красная, а след. 11*11 это лампочка зеленая


Denver   (2008-09-04 10:07:00) [34]

Мне надо чтобы это был один объект для след.

Object.Enabled:=(Flag and Light.Lit);

где Object -это кнопка
а Flag - boolean


brother   (2008-09-04 10:06:00) [35]

> led1on...led3off

думаю он сам хочет отрисовывать ? это же не лампочки ;)


oldman   (2008-09-04 10:03:00) [36]

ты про led1on...led3off из прилакаемых к дельфи images/buttons?

и что тебе непонятно?


Медвежонок Пятачок   (2008-09-04 09:51:00) [37]

как сделать в дельфи лампочку маленькую, чтобы true-зеленая, false-красная??? Заранее спасибо.

Я знаю как сделать. Но только большую лампочку.
И true-разбитая, а false - холодная.


brother   (2008-09-04 09:47:00) [38]

> типа Light.Lit:=true или Light.Lit:=false?

это уже объект со всеми вытекающими последствиями) тебе оно надо?


Сергей М.   (2008-09-04 09:44:00) [39]


> как то не серьезно


Это почему ?

И чем же проще "типа Light.Lit:=true или Light.Lit:=false" ?


Медвежонок Пятачок   (2008-09-04 09:44:00) [40]

как то не серьезно

слишком малый кпд?


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо