![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как сделать лампочку
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]как то не серьезно
слишком малый кпд?