Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi reflektierender Ball - Hilfe! (https://www.delphipraxis.net/150219-reflektierender-ball-hilfe.html)

LargoD 10. Apr 2010 14:52

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von Smokey002
Ich weiß einfach nicht was falsch läuft.

Hallo, vielleicht mal Beitrag #5 lesen?

mkinzler 10. Apr 2010 14:54

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von Der.Kaktus
Zitat:

Zitat von mkinzler
http://www.delphipraxis.net/internal_redirect.php?p=1145796#1145796

dat war wohl nix :gruebel:

Doch
Zitat:

Hallo, vielleicht mal Beitrag #5 lesen?

Der.Kaktus 10. Apr 2010 14:57

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von mkinzler
Zitat:

Zitat von Der.Kaktus
Zitat:

Zitat von mkinzler
http://www.delphipraxis.net/internal_redirect.php?p=1145796#1145796

dat war wohl nix :gruebel:

Doch
Zitat:

Hallo, vielleicht mal Beitrag #5 lesen?

:oops:

Smokey002 10. Apr 2010 18:17

Re: reflektierender Ball - Hilfe!
 
hi,

danke für die Hilfe. Der Ball reflektiert jetzt korrekt.

Delphi-Quellcode:

unit Uball;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Schlaeger: TShape;
    Pgrenze: TPanel;
    sball: TShape;
    BStart: TButton;
    procedure Timer1Timer(Sender: TObject);
    procedure BStartClick(Sender: TObject);
    procedure SchlaegerMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  bx: Integer;
  by: integer;
implementation

{$R *.DFM}

procedure TForm1.BStartClick(Sender: TObject);
begin
     bx:=5;
     by:=5;
     Timer1.enabled:=true;
end;


procedure TForm1.Timer1Timer(Sender: TObject);
begin

       sball.left:=sball.left+bx;
       if sball.left < 0 then
          begin
          sball.left := 1;
          bx := -bx;
          end;
          if sball.left > pgrenze.width - sball.width then
          begin
          sball.left := pgrenze.width - sball.width;
          bx := -bx;
          end;

       sball.top := sball.top+by;
       if sball.top < 0 then
          begin
          sball.Top := 1;
          by := -by;
          end;
       if sball.top > pgrenze.height - sball.height then
          begin
          sball.top := pgrenze.height - sball.height;
          by := -by;
          end;

end;


procedure TForm1.SchlaegerMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
Schlaeger.Left := X - Schlaeger.Width div 2;
end;

end.

Bei dem Mousemove procedure stimmt anscheinend auch etwas nicht. Meine Shape haftet sich sofort an die linke Wand und bewegt sich nur ab und zu mit meiner Maus. Aber auch nur um dann sofort wieder an die linke Wand zu hüpfen.

Wie kann ich einen Schläger programmieren?

schöni 10. Apr 2010 18:49

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von mkinzler
http://www.delphipraxis.net/internal_redirect.php?p=1145796#1145796

Da will mal wirklich einer eigene Leistung erbringen und im konkreten Fall nix kopieren und stattdessen siene Programmierschritte wirklich auch selber verstehen lernen, wie das von Leiten wie Dir und denen aus der OpenSource Sparte und einigen, die sich schon über Hausaufgabenthreads ausgelassen haben, vehement gefordert wird und Du verlinkst zum Angucken den eigenen Thread, den der altuell gelesen wird, statt eines nützlichen Beispiels oder einer nützlichen Erlärung, wie man reflektierende Bälle programmieren kann. Ist es mit der Wirtschaftskriese schon so weit, das kein Profiprogrammierer sich mehr leisten kann (odeer will), auch nur den geringsten Teil seines kostbaren Wissens preiszugeben?

mkinzler 10. Apr 2010 18:54

Re: reflektierender Ball - Hilfe!
 
Hast du den verlinkten Beitrag gelesen? Dort stand, was sein Fehler war!
Und mir fehlende Hilfsbereitschaft voirzuwesen find ich echt zu Kotzen!

schöni 10. Apr 2010 18:55

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von Corpsman
Naja ich hoffe nicht das er alles Kopiert, aber ich finde es imme rfürterlich wenn ich da was von "Shape" lese, und dadie Kollision in dem Sample auch gleich berücksichtigt wird ....

Das zu schnelle bewegen hat übrigens u.U. das Tunneling Problem..

Wo in der PowerPoint Präsentation steht was über das Tunneling Problem?

schöni 10. Apr 2010 18:59

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von mkinzler
Hast du den verlinkten Beitrag gelesen? Dort stand, was sein Fehler war!
Und mir fehlende Hilfsbereitschaft voirzuwesen find ich echt zu Kotzen!

Wäre deuutlicher gewesen, wenn ein Hinweis auf die Beitragsnummer dabei gestanden hätte. Vorschlag an die DP Moderatoren: Die Beitragsnummer ist recht klein geschrieben. Da muss man sogar bei ausdrücklich genannter Beitragsnummer sehr genau hin schauen.

Inzwischen hab ich aber gesehen, das Du Beitrag 5 gemeint hast. Nehme daher meinen Vorwurf zurück. Sorry also!

waldforest 10. Apr 2010 19:05

Re: reflektierender Ball - Hilfe!
 
Hallo,
hast du das OnMouseover an den Panel-Ereignis gebunden. Wenn es auf dem Form liegt kanns nicht funktionieren

Corpsman 10. Apr 2010 19:08

Re: reflektierender Ball - Hilfe!
 
Zitat:

Zitat von schöni
Zitat:

Zitat von Corpsman
Naja ich hoffe nicht das er alles Kopiert, aber ich finde es imme rfürterlich wenn ich da was von "Shape" lese, und dadie Kollision in dem Sample auch gleich berücksichtigt wird ....

Das zu schnelle bewegen hat übrigens u.U. das Tunneling Problem..

Wo in der PowerPoint Präsentation steht was über das Tunneling Problem?

Folie 64 - 78


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:55 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz