Fields

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

 

ClayC

Betreff: Fields

BeitragMo, Okt 13, 2008 18:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi ich bräuchte mal ein bisschen Hilfe zu dem Thema hab schon gesucht bin aber nicht fündig geworden.

Ich will in ein field(weiß nicht ob dass das beste für meinen fall ist) die x und y position schreiben und diese danach weiter zu verwenden.
Es geht darum a1 in ein Textfeld einzutragen und dann an fixen Koordianten ein Bild zu zeichen.

Zitat:
If Eingabe="A1" Then DrawImage image,pos.x,pos.y Flip


irgendwie so auf die art...

Aber ich weiß nicht so recht wie man die fields richtig definiert bzw. ich die positionen wieder herausbekomme.

Code: [AUSKLAPPEN]
Type A1
   Field x,y,z
End Type

Local pos:A1=New A1

pos.x=200
pos.y=200


Danke schonmal für etwaige Hilfe

Goodjee

BeitragMo, Okt 13, 2008 18:36
Antworten mit Zitat
Benutzer-Profile anzeigen
warum machst dus nicht genauso wie dus hier geschrieben hast?
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/
 

ClayC

BeitragMo, Okt 13, 2008 18:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Goodjee hat Folgendes geschrieben:
warum machst dus nicht genauso wie dus hier geschrieben hast?


Missing type specifier...
Aber im Grunde würds funktionieren oder wie?

DaysShadow

BeitragMo, Okt 13, 2008 19:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Setze hinter die field variablen noch den datentyp, also entweder x:int, y:int, z:int oder x% usw.
Auch musst du bei der ImageVariablen noch image:TImage hinter setzen sofern du das nicht hast.
Ich gehe mal gerade davon aus dass du dein Programm im Strict oder SuperStrict Modus laufen hast, denn dann musst du das immer machen!

MfG DaysShadow
Blessed is the mind too small for doubt
 

ClayC

BeitragMo, Okt 13, 2008 19:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Cool funkt... Vielen Dank

Eine Frage hab ich noch: Wenn ich das Textfeld A1 schreibe dann auf den ok button drücke kommt das bild aber A1 steht noch immer im Textfeld, also ich will das der Text gelöscht wird nach der Bestätigung, weiß aber nicht wie ich das machen kann.

Edit: einen Haken hat die Sache noch ich brauch nämlich mehr Felder als A1 also A2, A3, A4,... und wenn ich das Feld definiere
Code: [AUSKLAPPEN]
Type A2
   Field x:Int,y:Int,z:Int
End Type

Local pos:A1=New A1

pos.x:Int=400
pos.y:Int=400
pos.z:Int=0


hab ich 2 mal pos.x ich will aber immer bei jedem Feld pos.x damit das Bild von einer Stelle auf eine andere gezeichnet wird.

Code: [AUSKLAPPEN]
If Auslesen="A2" Then DrawImage Figur:Timage,pos.x,pos.y Flip

DaysShadow

BeitragMo, Okt 13, 2008 20:02
Antworten mit Zitat
Benutzer-Profile anzeigen
du kannst dir doch einfach noch ein Objekt deines Types anlegen

Code: [AUSKLAPPEN]

Type A1

     Field x:int, y:int, z:int

EndType

local pos1:A1 = new A1
pos1.x = 400
pos1.y = 400
pos1.z = 0

local pos2:A1 = new A1
pos2.x = 200
pos2.y = 200
pos2.z = 0

If Auslesen = "A1"
     DrawImage Figur , pos1.x , pos1.y
ElseIf Auslesen = "A2"
     DrawImage Figur , pos2.x , pos2.y
EndIf


Ich nehme mal an du meinst das TextField von MaxGUI? Da kenne ich mich leider nicht aus, sry!

Du brauchst übrigens den Typ einer Variable nicht immer angeben, sondern nur beim ersten Auftreten im Code.

MfG DaysShadow
Blessed is the mind too small for doubt

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group