Menue Problem

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite Zurück  1, 2, 3

Neue Antwort erstellen

Flush

BeitragDo, Apr 26, 2018 15:19
Antworten mit Zitat
Benutzer-Profile anzeigen
@MidiMaster
Danke es sieht so aus als ob alles funktioniert Very Happy
Ich muss das ganze jetzt verdauen und schauen ob und daß ich alles verstanden habe!
Ich werde nie wieder "----------" benutzen Exclamation

Du hast mich dadurch geführt, das war wirklich klasse Cool !


Viele Grüße und vielen, vielen Dank für Deine Mühe und Hilfe,
Flusher

Midimaster

BeitragDo, Apr 26, 2018 15:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Die hauptsächliche Änderung besteht darin, dass Du nun für die anderen 15 Bildmanipulationen keine einzelnen Schleifen mehr schreiben musst, sondern nur für jede einzelne Manipulation drei Funktionen zu erstellen hast, die folgendes regeln:

Ein Button-Menü muss erstellt werden.
Diese Funktionen sehen fast alle aus wie die CreateWaveMenue():
BlitzBasic: [AUSKLAPPEN]

Function CreateIrgendWasMenue()
ButtonNum =0
Viewport(10, 50, 200, 300)

SetButton("Text", 50, 50, 110, 30)
;... Set weitere Button

SetButton("RETURN", 50, 430, 100, 30)
SetBorder(400, 100, 800, 413)
CreateEnableDisableImage()
End Function


Eine Menü-Vezweigung muss erstellt werden
Diese Funktionen sehen fast alle aus wie die WaveMenue():
BlitzBasic: [AUSKLAPPEN]
Function IrgendWasMenue()

If ScreenDone = 0
CreateIrgendWasMenue()
ScreenDone = 1
Else
Select dButton(Menu)\cmdCaption
Case "Text 1"
CalcIrgendWas
Case "Text 2..."
CalcIrgendWas
Case "RETURN"
Screen=0
ScreenDone=0
End Select
EndIf
End Function


Eine Mal-Funktion muss erstellt werden. Die wird eingebunden in die DrawResults:
BlitzBasic: [AUSKLAPPEN]
Function DrawResults()
Select Screen
Case 1
ViewWave("horizontal")
Case 2
ViewIrgendWas
Case ...
End Select
End Function


Einbinden die die Hauptschleife
und Du darfst nicht vergessen jede der 15 Manipulationen an zwei Stellen in die Hauptschleife inzubinden:

BlitzBasic: [AUSKLAPPEN]
Function MainMenue()

If ScreenDone = 0
CreateMainMenue()
ScreenDone = 1
Else
Select dButton(Menu)\cmdCaption
Case "Image Sine Waves"
Screen = 1
ScreenDone = 0
Case "IrgendWas"
Screen = 2
ScreenDone = 0
Case "IrgendWasAnderes"
Screen = 3
ScreenDone = 0
Case ...
usw...
Case ">>>> END <<<<"
Quit()
End Select
EndIf
End Function



und hier:
BlitzBasic: [AUSKLAPPEN]
Repeat

Cls
MouseOver ()
MausHit = MouseHit(1)

If ((Menu>0) And (MausHit > 0)) Or (ScreenDone = 0)
Select Screen
Case 0
MainMenue()
Case 1
WaveMenue()
Case 2
IrgendWasMenue()
Case 3
u.s.w.
End Select
EndIf
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe

Gehe zu Seite Zurück  1, 2, 3

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group