Hauptmenü Frage

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

Toxic Chemical

Betreff: Hauptmenü Frage

BeitragMo, Jun 14, 2004 20:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi, da ich ja noch am anfangen bin hab ich mir einfach mal gedacht zur übung ein ganz einfaches Hauptmeü zu machen.
Klappt auch alles (bisher) super, leider häng ich jetzt:
Code: [AUSKLAPPEN]

Graphics 800,600, 32,1
SetBuffer BackBuffer()


Global Font1 = LoadFont("Verdana",28)
Global Font2 = LoadFont("Verdana",16)
Global Maus = LoadImage("Bilder\maus.bmp")

; ------------------------------------- Schleife

Repeat
Cls


Hauptmenue

Flip

Until KeyHit (1)


; ------------------------------------- Hauptmenue
Function Hauptmenue()


DrawImage Maus,MouseX(),MouseY()

SetFont Font1
Color 225, 0, 0

Text 350, 10, "Überschrift"

SetFont Font2
Text 85, 100, "Neues Spiel"
Text 70, 130, "Spiel Fortsetzen"
Text 100, 160, "Credits"
Text 100, 190, "Beenden"

Color 128,0,0

Rect 50, 100, 150, 25, 0 ; rechts1, runter1, rechts2, runter2
Rect 50, 130, 150, 25, 0 ; rechts1, runter1, rechts2, runter2
Rect 50, 160, 150, 25, 0 ; rechts1, runter1, rechts2, runter2
Rect 50, 190, 150, 25, 0 ; rechts1, runter1, rechts2, runter2


; ------

Color 128,0,0

xmaus = MouseX()
ymaus = MouseY()

Text 1, 1, "x: "+ Str$(MouseX())
Text 1, 20, "y: " + Str$(MouseY())


End Function


Ich möchte, dass wenn ich mit der Maus auf eines dieser Rechtecke (Code: [AUSKLAPPEN]

Rect 50, 100, 150, 25, 0 ; rechts1, runter1, rechts2, runter2
) fahre,dass die dann erleuchten (einfach in rot)!
Weiß leider nicht wie das geht?!

Hoffe ihr könnt mir helfen!

d-bug

BeitragMo, Jun 14, 2004 20:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
If MouseX() > 50 And MouseX () < 150-50 And MouseY() > 100 And MouseY() < 100+25
 Color 255,0,0
 Rect 50,100,150,25,0
EndIf


versuchs mal so, highlightet aber im moment nur den obersten button.
Muß auf jeden fall hinter :
Code: [AUSKLAPPEN]
Rect 50, 100, 150, 25, 0 ; rechts1, runter1, rechts2, runter2
Rect 50, 130, 150, 25, 0 ; rechts1, runter1, rechts2, runter2
Rect 50, 160, 150, 25, 0 ; rechts1, runter1, rechts2, runter2
Rect 50, 190, 150, 25, 0 ; rechts1, runter1, rechts2, runter2

eingefügt werden...

greetz

hatte vergessen, daß es ja rot sein soll....

@Hubsi, synchron tipp Very Happy
  • Zuletzt bearbeitet von d-bug am Mo, Jun 14, 2004 20:27, insgesamt einmal bearbeitet

Hubsi

BeitragMo, Jun 14, 2004 20:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Vor jedes Rect ein Color setzen und bei Überschneidung der Mauskoords mit dem Rechteck die Farbe entsprechend ändern:
Code: [AUSKLAPPEN]
If überschneidung Then Color 255,0,0 Else Color 128,0,0
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

black_threat

BeitragMo, Jun 28, 2004 16:01
Antworten mit Zitat
Benutzer-Profile anzeigen
kann man sowas auch mit eine bild machen wo dan wenn man mit der maus drüberfährt das ein anderes bild angezeit wird?
das ist mein code könnt ihr mir genau sagen was ich da machen muss?

Code: [AUSKLAPPEN]
Graphics 800,600,32,2
SetBuffer BackBuffer()

button=LoadImage("button.png")
gfxCircle=LoadImage("gfxCricle.png")
HidePointer


While Not KeyHit(1)

   circleX = MouseX()
   circleY = MouseY()
   Maustaste = MouseHit (1)
   
   DrawImage button,100,100
   DrawImage gfxCircle,circleX,circleY
   
   If Maustaste = 1 Then
      If ImagesOverlap (button,100,100,gfxCircle,circleX,circleY) Then
         End
      End If
   End If
   Flip
Cls

Wend
End


ich hoffe ihr könnt mir helfen

black_threat

dominik

BeitragMo, Jun 28, 2004 16:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Graphics 800,600,32
SetBuffer BackBuffer()

button1 = LoadImage("button1.png")
button2 = LoadImage("button2.png")
gfxCircle = LoadImage("gfxCricle.png")
HidePointer


While Not KeyHit(1)

   circleX = MouseX()
   circleY = MouseY()
   Maustaste = MouseHit (1)
   
   DrawImage button1,100,100
   DrawImage gfxCircle,circleX,circleY
   
   If Maustaste = 1 Then
      If ImagesOverlap (button1,100,100,gfxCircle,circleX,circleY) Then
        DrawImage button2,100,100
        DrawImage gfxCircle,circleX,circleY
        Flip
        WaitKey()
        End
      EndIf
   EndIf
   Flip
Cls

Wend
End
 

black_threat

BeitragMo, Jun 28, 2004 17:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Graphics 1024,768,32,1
SetBuffer BackBuffer()

button=LoadImage("button.png")
button2=LoadImage("button2.png")
 gfxCircle=LoadImage("gfxCricle.png")
MaskImage gfxCircle,255,0,255
HidePointer


While Not KeyHit(1)

circleX = MouseX()
circleY = MouseY()
Maustaste = MouseHit (1)

DrawImage button,100,100
DrawImage gfxCircle,circleX,circleY

If Maustaste = 1 Then
If ImagesCollide (button,100,100,0,gfxCircle,circleX,circleY,0) Then
DrawImage button2,100,100
DrawImage gfxCirlce,circleX,circleY
Flip
WaitKey()
End
End If
End If
Flip
Cls

Wend
End


was ist daran jetzt falsch? es funzt nicht Sad. Hab den code nur etwas abgeändert

Hubsi

BeitragMo, Jun 28, 2004 17:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Tausch den ganzen Block aus. Mehrere Flip in einer Hauptschleife haben den Teufel gesehen Wink
Code: [AUSKLAPPEN]
Graphics 1024,768,32,1
SetBuffer BackBuffer()

button=LoadImage("button.png")
button2=LoadImage("button2.png")
 gfxCircle=LoadImage("gfxCricle.png")
MaskImage gfxCircle,255,0,255
HidePointer


While Not KeyHit(1)

circleX = MouseX()
circleY = MouseY()
Maustaste = MouseHit (1)

If circlex>100 And circlex<200 And circley>100 And circley<200 Then
  DrawImage button2,100,100
  If Maustaste = 1 Then
    ; Button geklickt
  End If
Else
  DrawImage button2,100,100
End If

DrawImage gfxCircle,circleX,circleY

Flip
Cls

Wend
End
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

black_threat

BeitragMo, Jun 28, 2004 17:43
Antworten mit Zitat
Benutzer-Profile anzeigen
kannst du mir bitte genau sagen wo ich das einfügen muss. BITTE kenn mich nich damit aus Embarassed

Hubsi

BeitragMo, Jun 28, 2004 17:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Hatte vorher noch ein wenig rumeditiert, der Code ist jetzt komplett. Du musst nur noch statt den 200 bei der Überlappungsabfrage den Wert den Du bei 100+Bildbreite und 100+Bildhöhe rausbekommst eintragen.
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

black_threat

BeitragMo, Jun 28, 2004 18:00
Antworten mit Zitat
Benutzer-Profile anzeigen
also die maße des buttons sind : breite x höhe = 80 x 20

Code: [AUSKLAPPEN]
Graphics 1024,768,32,1
SetBuffer BackBuffer()

button=LoadImage("button.png")
button2=LoadImage("button2.png")
gfxCircle=LoadImage("gfxCricle.png")
MaskImage gfxCircle,255,0,255
HidePointer


While Not KeyHit(1)

circleX = MouseX()
circleY = MouseY()
Maustaste = MouseHit (1)

If circlex>100 And circlex<180 And circley>100 And circley<120 Then
DrawImage button2,100,100
If Maustaste = 1 Then
; Button geklickt
End If
Else
DrawImage button2,100,100
End If

DrawImage gfxCircle,circleX,circleY

Flip
Cls

Wend
End


und was ist jetzt falsch? bin bald am verzweifeln zum Glück gibts da noch das blitzforum Smile

Hubsi

BeitragMo, Jun 28, 2004 18:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Embarassed Hab einen Fehler gemacht Embarassed Ändere das button2 unter dem Else in button1, dann sollte es gehen.
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

black_threat

BeitragMo, Jun 28, 2004 18:09
Antworten mit Zitat
Benutzer-Profile anzeigen
yeah es funzt, rießen *thx* to Hubsi Very Happy

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group