1. hab ich in der codelib nix gefunden.
2. ich hab jetzt selbst was neues geschrieben. buttonlos. timage, die sich bewegen soll mit taste drücken/loslassen.
und ich hab mich eigtl stark an dem boxprogramm orientiert. aber wenn ich tasten drück, passiert nix.
dann hab ich in den timer gesetzt, dass sich bewegen soll, dann tuts. also an sich ist nix falsch, es wird nur ned aktiviert.
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;
type
TForm1 =
class(TForm)
link: TImage;
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
procedure FormKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
procedure FormKeyRelease(Sender: TObject;
var Key: Word; Shift: TShiftState);
private
{ Private-Deklarationen }
public
x, y :integer;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if key=VK_left
then x:=-1;
if key=VK_right
then x:=1;
if key=VK_up
then y:=-1;
if key=VK_down
then y:=1;
end;
procedure TForm1.FormKeyRelease(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if key=VK_left
then x:=0;
if key=VK_right
then x:=0;
if key=VK_up
then y:=0;
if key=VK_down
then y:=0;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
link.left:=link.left+1;
if link.Top>425
then link.Top:=-24;
if link.Left>425
then link.Left:=-24;
if link.Top<-24
then link.Top:=425;
if link.Left<-24
then link.Left:=425;
link.Top:=link.Top+y;
link.Left:=link.Left+x;
end;
end.
image heißt link, weil soll n held sein x)
mit diesem
link.left:=link.left+1;
bewegt sichs halt generell. daran sieht man halt, dasses an sich tun müsste.
und die 425 sind halt die bildgrenzen, damits nicht ins nix laufen kann..
kann mir nun wer sagen, worans liegt?