30. juli 2003 - 16:17Der er
4 kommentarer og 1 løsning
Grøn/Rød lysdiode på Form
Hvordan laver jeg en lysdiode på en Form - som ligner en rigtig lysdiode? Lysdioden skal have mulighed for at være rød og grøn. Jeg har lavet en firkantet boks som skifter mellem rød og grøn, men det ser ikke rigtig ud.
På fanebladet additional er der en komponent, der hedder shape. Indsæt denne (det er formentlig din firkantede boks) og den kommer så til at hedde Shape1. Den har en egenskab, der hedder shape. Sæt denne til stCircle, så har du en cirkel. Så skifter du farven ved at skrive en af følgende kommandoer:
Hvis det stadig ikke ligner en rigtig diode, så find et billede af en rød og en grøn diode. Sæt et image (fanebladet additional) ind på din form, og skift mellem de to billeder med følgende kommando:
procedure TForm1.TegnDiode(Sender : TObject); begin with Canvas do begin Brush.Color := Form1.Color; FillRect(Rect(10,10,30,30)); if Sender is TButton then with Sender as TButton do begin if Caption = 'Rød' then begin Pen.Color := clMaroon; Canvas.Brush.Color := clRed; end else if Caption = 'Grøn' then begin Pen.Color := clGreen; Canvas.Brush.Color := clLime; end; end; Ellipse(10,10,30,30); Pen.Color := clWhite; Brush.Color := clWhite; Ellipse(15,15,20,20); end; end;
procedure TForm1.Button1Click(Sender: TObject); begin TegnDiode(Button1); end;
procedure TForm1.Button2Click(Sender: TObject); begin TegnDiode(Button2); end;
Hej zerohero, det er en udseendemæssigt lidt smartere løsning du har lavet. Tak. //PZ
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.