menu machen

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

chris1234

Betreff: menu machen

BeitragFr, Feb 06, 2004 17:30
Antworten mit Zitat
Benutzer-Profile anzeigen
da ich erst seit kurzem auf BB programmiere [4tage] weiss ich nicht genau wie man ein menü macht
wär net wenn jemand es mir erklären könnte
danke schonmal im vorraus

Flori-D

BeitragFr, Feb 06, 2004 18:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Erst seit 4Tagen?Wozu brauchst du denn ein Menü?Du dürftest doch noch gar nicht so weit sein das du unbedingt eins Brauchst oder?
Aber sag mal wie viele Functionen das Menü haben muss.
BB is Macht!

Homepage: www.flori-d.de

TheShadow

Moderator

BeitragFr, Feb 06, 2004 18:32
Antworten mit Zitat
Benutzer-Profile anzeigen
menü kommt immer zum schluß, wenn spiel so gut wie fertig ist... Wenn du zuerst menü machst, dann wird dein Spiel nie fertig
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

Flori-D

BeitragFr, Feb 06, 2004 18:40
Antworten mit Zitat
Benutzer-Profile anzeigen
So siehts aus.Weil wenndas spiel fertig ist kannst du dann bspw. in einem neuen bb-projekt das menü machen kopieren und dann einfach dein spiel
an die richtig stelle schieben.
BB is Macht!

Homepage: www.flori-d.de

chris1234

BeitragSo, Feb 08, 2004 0:52
Antworten mit Zitat
Benutzer-Profile anzeigen
mein spiel ist eigentlich auch schon so gut wie fertig [es ist nur ein einfaches quiz]

Last Anquav Hero

BeitragSo, Feb 08, 2004 11:11
Antworten mit Zitat
Benutzer-Profile anzeigen
hui, da bekomm ich ja glatt lust, ein quizspiel zu machn Smile

Freeman

BeitragSo, Feb 08, 2004 11:17
Antworten mit Zitat
Benutzer-Profile anzeigen
also ich würde das so machen ( geb zu ich habe auch noch nie so ein Menü gemacht ...) das du dir nen Paar hübsche Schriftzüge per Photoshop oda so erstellst die als Bilder anzeigen lässt und du dann einfach ne Abfrage zwischen deiner Maus und dem Schriftzug machst. Ansonsten auf der harten Tour würde ich mir sowas proggen, soonen Schriftzug , weil man kann ja jeden Pixel einzeln setzten und diesem Farbwerte geben. Dann fragst du wieder den X/Y Bereich ab und fertig ist das ganze .
ich hoffe ich konnt dir helfen

Freeman
MacBook | MacOSX 10.5 | 80GB HDD | 1GB | BlitzMax 1.28

dominik

BeitragSo, Feb 08, 2004 11:18
Antworten mit Zitat
Benutzer-Profile anzeigen
des zweite is vll. nen bischen zu komliziert für nen anfänger. Confused

DivineDominion

BeitragSo, Feb 08, 2004 11:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Tastaturmenü:
Du baust dir meinetwegen ein Array (von types hast du wohl noch nicht so arg viel ahnung Smile). Das muss nur zweidimensional sein. Da speicherst du dann X und Y position der einzelnen Menüpunkte und verschiebst einen cursor (Zeigegrafik) immer, indem du ihm eine andere Nummer zuweist. Im Array stehen dann die entsprechenden Koordinaten für die Nummer. Beim drücken von ENTER baust du eine If Nummer=... ein oder nimmst Select-Case. Mehr ist das nicht Smile

Mausmenü macht man dann am Anfang am besten mit den vordefinierten ImageCollide/Overlap/... Funktionen zwischen den einzelnen Menüs und der Maus. Die Bilder könnte man dann in einem eindimensionalem Array speichern, damit man zur If-Abfrage beid en Positionen nur eine For-Next nehmen muss. Sonst müsstest du für jedes Bild manuell eine If-Abfrage schreiben, was dann doch nicht so fein wäre, gell? Smile
Mit Array: Beim Click hättest du dann die Nummer im Array über der sich die Maus befindet. If/Select und fertig
Ohne: Du setzt bei erfülltem ImagesCollide (oder overlap etc.) eine Variable auf eine bestimmte zahl und prüfst beim Click dann, welchen WErt die hat, um den enüpunkt zu identifizieren.

SO. Smile
christian.tietze@gmail.com - https://christiantietze.de
macOS

chris1234

BeitragSo, Feb 08, 2004 14:05
Antworten mit Zitat
Benutzer-Profile anzeigen
puhh das ist schon ziemlich kompliziert!!
danke ma an alle!!

Travis

BeitragSo, Feb 08, 2004 17:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich ziehe die Menüsteuerung vor, bei der man einen Auswahlpunkt steuert und dann mit Enter den markierten Punkt auswählt. Ist später am komfortabelsten zu bedienen und geht schneller als mit der Maus. Wink

Hier mal ein Codebeispiel dazu.

Code: [AUSKLAPPEN]

menu = 1; Ausgewählten Menüpunkt vorauswählen

Graphics 800,200
SetBuffer BackBuffer()
Repeat
Cls

AppTitle "Menüpunkt " + menu + " ist gewählt (Pfeiltasten zum ändern, ENTER = Auswahl))"

For y = 1 To 10 ; Alle Menüpunkte anzeigen
 Text 50, (y*10), "Menüpunkt " + y
Next

Oval 30,(menu*10)+4, 4,4; Markierung des aktuellen Menüpunktes anzeigen

If KeyHit(208) Then menu = menu + 1 ; Menüpunkt runterschalten
If KeyHit(200) Then menu = menu - 1 ; Menüpunkt raufschalten

If menu > 10 Then menu = 1 ; Vom letzten zum ersten Menüpunkt springen
If menu < 1 Then menu = 10 ; Vom ersten zum letzten Menüpunkt springen

If KeyHit(28) Then ; Bei drücken von Enter entsprechend der Auswahl eine Aktion ausführen

 ; Am besten macht man das so:
 
 ; Select Menu
 ;  Case 1
 ;    Goto Menupunkt1
 ;  Case 2
 ;    Goto Menupunkt2
 ;  ....
 ;  Case 10
 ;     Goto Menupunkt10
 ;  End Select

 ; Das was hier drunter steht, dient nur zur Demonstration, weil hier ja kein Menüpunkt
 ; ausgewählt wird, sondern nur der gewählte Punkt angezeigt wird.

 Text 50, 130, "Menüpunkt " + menu + " wurde gewählt. (Taste drücken)"
 Flip
 FlushKeys
 WaitKey
EndIf

Flip
Until KeyHit(1)
End
www.funforge.org

Ich hasse WASD-Steuerung.

Man kann alles sagen, man muss es nur vernünftig begründen können.

DivineDominion

BeitragSo, Feb 08, 2004 18:54
Antworten mit Zitat
Benutzer-Profile anzeigen
ist es wirklich so schlau, das apptitle bei JEDEM schleifendurchlauf zu setzen? Wink
Kompliziert ist es aber überhaupt nicht. erklärt sich nur umständlich
christian.tietze@gmail.com - https://christiantietze.de
macOS

Travis

BeitragSo, Feb 08, 2004 19:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Man könnte AppTitle nur dann aufrufen, wenn auch eine Taste gedrückt wird.

Code: [AUSKLAPPEN]

If KeyHit(208) Then
 menu = menu + 1 ; Menüpunkt runterschalten
 AppTitle "Menüpunkt " + menu + " ist gewählt (Pfeiltasten zum ändern, ENTER = Auswahl))"
EndIf

If KeyHit(200) Then
 menu = menu - 1 ; Menüpunkt raufschalten
 AppTitle "Menüpunkt " + menu + " ist gewählt (Pfeiltasten zum ändern, ENTER = Auswahl))"
 EndIf



Aber ob das nötig ist. So viel Performance wird das ganze wohl nicht kosten. Wink

EDIT:

Code: [AUSKLAPPEN]

StartZeit = MilliSecs()
MessZeit = 1000; ms

Repeat
 i = i + 1
 AppTitle "i"
Until MilliSecs() - StartZeit > Messzeit

Print i + " Durchläufe in " + MessZeit + "ms"

WaitKey
End


5000 mal in 1000ms => 1mal = 0,2ms
www.funforge.org

Ich hasse WASD-Steuerung.

Man kann alles sagen, man muss es nur vernünftig begründen können.
 

sven123

BeitragSo, Feb 08, 2004 19:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe dir mal so einen Code mnal Geschickt!Als Pn guck dir den mal an!
Amd Athlon 2200+,Saphire Atlantis Radeon9800pro,1024 MB DDR RAm,40 Gb Festblatte.
'in shâ'a llâh=so Gott will
Fertiges Projekt:Invasion der Heuschrecken

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group