AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi zeichen problem beim scrollen
Thema durchsuchen
Ansicht
Themen-Optionen

zeichen problem beim scrollen

Offene Frage von "mimi"
Ein Thema von mimi · begonnen am 14. Dez 2003 · letzter Beitrag vom 18. Dez 2003
Antwort Antwort
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#1

zeichen problem beim scrollen

  Alt 14. Dez 2003, 14:03
Hallo,
habe da ein kleines problem:
Delphi-Quellcode:
var
  x,y,i,p,m:Integer;
begin
  GLXDraw.Clear;
// sx:=0; sy:=0;

  if Player.Players[Player.index].x-Player.DX >= 0 then
    p:=(Player.Players[Player.index].x-Player.DX)
  else
    p:=0;


  for x:=0 to MapX do begin
    for y:=0 to MapY do begin

      if Karte[x,y].typ > -1 then begin
        for i:=0 to High(Karte[x,y].Tex) do begin
          if x-p >0 then
            m:=x-p
          else
            m:=p-x;
          if p > 0 then
            GLXImageList.Items[Karte[x,y].typ].Draw(m * MapS,Y*MapS,Karte[x,y].Tex[i] )
          else
            GLXImageList.Items[Karte[x,y].typ].Draw( X*MapS,Y*MapS,Karte[x,y].Tex[i] )

        end;
      end;

    end;
  end;
warum geht das nicht?
er zeichnet nicht richtig !!!
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#2

Re: zeichen problem beim scrollen

  Alt 15. Dez 2003, 10:29
hi,

gib deinem VCL-Objekt zeit zum Ausführen deiner Draw-Anweisung in den Schleifendurchläufen. Entweder mit
Application.ProcessMesssages // nach Draw für Process-Zeit anstehender Botschaften oder durch einen direkten Aufruf zum Zeichnen nach Draw mittels Invalidate oder Refresh.

Gruß oki
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#3

Re: zeichen problem beim scrollen

  Alt 15. Dez 2003, 17:22
das problem ist:
er zeichnet ein strein und da ist überhaupt keiner.
ich habe mal die anwendung hochgalden
hier noch mal der "neue" code zum zeichnen:
Delphi-Quellcode:
procedure T2D_Engine.DrawMap;
var
  x,y,i,p,m:Integer;
begin
  GLXDraw.Clear;
// sx:=0; sy:=0;

  if Player.Players[Player.index].x-Player.DX >= 0 then
    p:=(Player.Players[Player.index].x-Player.DX)
  else
    p:=0;


  for x:=0 to MapX do begin
    for y:=0 to MapY do begin

      if Karte[x,y].typ > -1 then begin
        for i:=0 to High(Karte[x,y].Tex) do begin
          if p > 0 then
            GLXImageList.Items[Karte[x,y].typ].Draw( (x-p) * MapS,Y*MapS,Karte[x,y].Tex[i] )
          else
            GLXImageList.Items[Karte[x,y].typ].Draw( X*MapS,Y*MapS,Karte[x,y].Tex[i] )

        end;
      end;

    end;
  end;

{  for i:=0 to High(Player.Players) do begin
    if i = Player.index then
      GLXImageList.Items[2].Draw((Player.Players[Player.index].X+39 div 2)*MapS, (Player.Players[player.index].Y+21 div 2)*mapS,Player.Players[player.index].Tex )
    else
      GLXImageList.Items[2].Draw( Player.players[i].X*MapS,Player.players[i].Y*MapS,Player.players[i].tex );
  end;}


  for i:=0 to High(Player.Players) do begin
    if Player.Players[Player.index].x - Player.DX > 0 then
      GLXImageList.Items[2].Draw(( Player.Players[Player.index].x-Player.DX )*MapS ,Player.players[Player.index].Y*MapS,Player.players[i].tex )
    else
      GLXImageList.Items[2].Draw(Player.Players[Player.index].x*MapS ,Player.players[Player.index].Y*MapS,Player.players[i].tex );
  end;
  GLXDraw.Flip;
end;
Angehängte Dateien
Dateityp: zip 2d_engine.zip (902,7 KB, 16x aufgerufen)
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#4

Re: zeichen problem beim scrollen

  Alt 18. Dez 2003, 11:31
problem gelöst !!!
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 Uhr.
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