AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Sowas wie "Sprites" in einer paintbox
Thema durchsuchen
Ansicht
Themen-Optionen

Sowas wie "Sprites" in einer paintbox

Ein Thema von Stephan · begonnen am 5. Nov 2002 · letzter Beitrag vom 5. Nov 2002
 
Sebastian Nintemann
(Gast)

n/a Beiträge
 
#3
  Alt 5. Nov 2002, 20:21
Hallo!

Also sowas wie Sprites stellt die PaintBox wohl wirklich nicht zur Verfügung, sie dient ja auch eigentlich nur zum zeichnen. Wenn du immer gleich große Symbole verwendest kannst du ja zB ein zweidimensionales Array anlegen in dem Positionen gespeichert werden. Also mal ein einfaches Beispiel, in dem du was auch immer du anzeigen willst durch strings darstellt (wie du es nun machst ist ja letztendlich egal).
Ist also nun zb ein Symbol an der Position (0,0) auf der PaintBox, dann setzt du in dem Array das entsprechende Feld auf 'Symbol1' , also arrayvar[0,0] := 'Symbol1' (oder sonstwie).
Ich gehe jetzt von 32 * 32 großen Symbolen aus. beim Klick prüfst du dann ob das angeklickte Rasterfeld besetzt ist:

Code:
if arrayvar[x div 32,y div 32] = 'Symbol1' then //tu irgendwas
//x und y sind die Mauskoordinaten
Mit den Linien wirds auch nicht viel schwerer (zumindest wenn diese nur vertikal/horizontal sein können)

Dafür machst du halt ein Array mit jeweils zwei Punkten (x und y Koordinate -> TPoint) pro Feld (also eine Linie pro Feld), dürchläufst dieses mit ner Schleife und prüfst ob die Mauskoordinaten zwischen den Punkten liegen. //so ungefähr


Gruß, Sebastian
  Mit Zitat antworten Zitat
 


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 20:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz