Mauszeiger

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Pousup

Betreff: Mauszeiger

BeitragMi, Jan 16, 2008 22:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo, nettes Forum habt ihr hier, erstmal vorab Wink

Ich bin ein absoluter Noob was BB angeht, hab vor 3 Tagen angefangen mich damit vertraut zumachen und bin bisher super zufrieden.

Wollte jetzt ein kleines Testprogramm aller Moorhuhn (natürlich keine aufwändige Grafik) coden und hab da gleich eine erste Frage. Und zwar will ich, dass der Mauszeiger angezeigt wird, und ein Fadenkreuz als Image hat. Wenn ich allerdings meine Idee umsetze, wird das Fadenkreuz da ausgegeben, wo die Maus sich befand, bevor ich das Programm gestartet habe, lässt sich allerdings nicht mehr bewegen. Meine Frage:

Was mache ich falsch?

Code: [AUSKLAPPEN]

maus = LoadImage("graphics\mouse.bmp")
MaskImage maus,255,0,0

mx = MouseX()
my = MouseY()

Repeat

DrawImage maus,mx,my


If KeyHit(1) Then End

Forever


Übrigens sieht man das Fadenkreuz nur, wenn man sich im Fenstermodus befindet.
 

ChristianK

BeitragMi, Jan 16, 2008 22:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Funktionen MouseX( ) und MouseY( ) geben die aktuelle Position der Maus zurück. Desahlb musst du "mx = MouseX( )" und "my = MouseY( )" mit in die Schleife tun, damit die Position in jedem Schleifendurchlauf neu erfasst wird.
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT

Willi die Rübe

BeitragMi, Jan 16, 2008 22:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Schau mal in der Onlinehilfe die 2D Grundlagen nach, dir fehlen ein paar wichtige Befehle:
Code: [AUSKLAPPEN]

Graphics 800,600,32,2 ;Initialisierung des Fensters, Details siehe Onlinehilfe

Setbuffer Backbuffer() ; Aktiviert DoubleBuffering, wird in Rob's Tutorial näher erklärt

Global mx,my ;Variablen zur Übersicht globalisieren

Global maus = LoadImage("graphics\mouse.bmp")
MaskImage maus,255,0,0

Repeat
   Cls; löscht den Inhalt des aktuellen Buffers, da man sonst auf dem alten gezeichneten Mist rummalt

   mx = MouseX() ; MouseX und MouseY liefern die Mousekoordinaten als Rückgabewert zurück.
   my = MouseY() ; Deshalb müssen diese in jeder Mainloop neu abgerufen werden

   DrawImage maus,mx,my

   Flip ;Vertauscht die Buffer
Until Keyhit(1) ;kombiniert Forever mit einer If Bedingung
End
Ich habe keine Lösung, aber ich bewundere das Problem.
Tehadon
Q6600, MSI Neo2-FR, 4GB Ram, nVidia 7800 GTX

At the Farewell Party visit: MySpace | Homepage

BladeRunner

Moderator

BeitragMi, Jan 16, 2008 22:32
Antworten mit Zitat
Benutzer-Profile anzeigen
~VERSCHOBEN~
Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Pousup

BeitragMi, Jan 16, 2008 22:44
Antworten mit Zitat
Benutzer-Profile anzeigen
danke vielmals! jetzt gehts Smile

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group