22. september 2002 - 22:01
Der er
8 kommentarer og 1 løsning
frem og tilbage
hvordan får man et billed til at gå frem og tilbage på formen?
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
22. september 2002 - 22:08
#1
Du kan vel bruge en timer og under dens procedure skrive Image1.Left := Image1.Left + 10; Dog bliver det ikke særligt dynamisk.
22. september 2002 - 22:46
#2
den skal jo også den anden vej igen... det er det jeg ikke kan få til at virke. det er lige meget om det bliver dynamisk, den skal bare frem og tilbage...
22. september 2002 - 23:12
#3
Så indsætter du to timere. Proceduren under timer1: if Image1.Left < Form1.ClientWidth then Image1.Left := Image1.Left + 10 else begin Timer2.Enabled := True; Timer1.Enabled := False; end; Timer2: if Image1.Left > 1 then Image1.Left := Image1.Left - 10 else begin Timer1.Enabled := True; Timer2.Enabled := False; end; Forstår du idéen i det?
22. september 2002 - 23:38
#4
jeg kan godt forstå det men.... når jeg laver det kommer den med denne fejl [Error] Unit1.pas(39): Statement expected but 'PROCEDURE' found koden er: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls; type TForm1 = class(TForm) Timer1: TTimer; Timer2: TTimer; Image1: TImage; procedure Timer2Timer(Sender: TObject); procedure Timer1Timer(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Timer2Timer(Sender: TObject); begin if Image1.Left > 1 then Image1.Left := Image1.Left - 10 else begin Timer1.Enabled := True; Timer2.Enabled := False; end; procedure TForm1.Timer1Timer(Sender: TObject); begin if Image1.Left < Form1.ClientWidth then Image1.Left := Image1.Left + 10 else begin Timer2.Enabled := True; Timer1.Enabled := False; end; end. hvad er der galt med den?
22. september 2002 - 23:42
#5
..... implementation {$R *.dfm} procedure TForm1.Timer2Timer(Sender: TObject); begin if Image1.Left > 1 then Image1.Left := Image1.Left - 10 else begin Timer1.Enabled := True; Timer2.Enabled := False; end; end; procedure TForm1.Timer1Timer(Sender: TObject); begin if Image1.Left < Form1.ClientWidth then Image1.Left := Image1.Left + 10 else begin Timer2.Enabled := True; Timer1.Enabled := False; end; end; end. du manglede lige et par end;
23. september 2002 - 00:15
#6
den skifter stadig ikke retning...
23. september 2002 - 00:36
#7
nu har jeg fået det til at virke.. hvordan flytter man så flere billeder på een gang uden at skulle skrive hele koden hver gang?
25. september 2002 - 20:23
#8
ligemeget.... men du skal lige svare for at få point..
26. september 2002 - 00:05
#9
okay, håber du kunne bruge det til bare lidt. tak
Kurser inden for grundlæggende programmering