Musik stoppen - Button funktioniert nicht
Übersicht

![]() |
DATISBetreff: Musik stoppen - Button funktioniert nicht |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo Blitzer!
Entschuldigung, aber heute vertrage ich mich einfach nicht mit Buttons. Komme auch hier gleich zur Sache, aber erstmal das Problem: Ich habe ein ganz simples Prog, das einfach nur Musik abspielt. Mit einem Stop-button kann man die Musik pausieren und nochmal ein Klick drauf und es geht weiter. Problem bei der Sache ist nun ImagesCollide. Es funktioniert nicht: Code: [AUSKLAPPEN] Repeat
Cls mh=MouseHit(1) DrawImage newbg,0,0 If musstop=0 Then DrawImage stop01,350,50 If musstop=1 Then DrawImage stop02,350,50 temptime=MilliSecs()-a PauseChannel song EndIf DrawImage img0,0,0 DrawImage pointer,MouseX(),MouseY() If ImagesCollide(pointer,MouseX(),MouseY(),0,stop01,350,50,0) And mh=1 And musstop=0 Then musstop=1 If ImagesCollide(pointer,MouseX(),MouseY(),0,stop02,350,50,0) And mh=1 And musstop=1 Then musstop=0 ResumeChannel song EndIf Flip fgg=MilliSecs()-a b=fgg-temptime If KeyHit(1) Then Exit Until b>96000 End Wenn ich auf den Button klicke passiert gar nichts. Danke für die Hilfe schonmal im Vorraus. |
||
Frauen und Technik?
Männer und BHs? Beides möglich. |
- Zuletzt bearbeitet von DATIS am Sa, Aug 19, 2006 12:43, insgesamt 2-mal bearbeitet
![]() |
garret |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der Fehler liegt wahrscheinlich hier:
Code: [AUSKLAPPEN] If ImagesCollide(pointer,MouseX(),MouseY(),0,stop01,350,50,0) And mh=1 And musstop=0 Then musstop=1 If ImagesCollide(pointer,MouseX(),MouseY(),0,stop02,350,50,0) And mh=1 And musstop=1 Then musstop=0 In der ersten Abfrage wird musstop auf eins gesetzt, in der zweiten If musstop=1 abgefragt. Hier ist sie ja durch die erste Bedingung schon 1 und wird dort wieder auf 0 gesetzt ![]() Am Besten also alles zusammenfassen: Code: [AUSKLAPPEN] If ImagesCollide(pointer,MouseX(),MouseY(),0,stop02,350,50,0) And mh=1 musstop = 1 - musstop musstop = 1 - musstop lässt die Variable dann immer zwischen 0 und 1 wechseln, wenn die Bedingungen erfüllt sind. Setz' einfach für musstop im Kopf mal 0 bzw. 1 ein und sieh' dir an, was dabei heraus kommt ![]() MfG garret |
||
>>nec aspera terrent<< (Auch Widerwärtigkeiten schrecken nicht) |
![]() |
DATISBetreff: naja, trotzdem danke! |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke garret!
Aber der Stop-button funktioniert trotzdem nicht. Wenn ic auf Stop! klicke (stop01) pausiert das Lied, wenn ich aber auf Weiter! (stop02) klicke, pausiert die Musik immernoch. Aktuell ist der Quelltext also: Code: [AUSKLAPPEN] Repeat
Cls mh=MouseHit(1) DrawImage newbg,0,0 If musstop=0 Then DrawImage stop01,350,50 ResumeChannel song EndIf If musstop=1 Then DrawImage stop02,350,50 temptime=MilliSecs()-a PauseChannel song EndIf DrawImage img0,0,0 DrawImage pointer,MouseX(),MouseY() If ImagesCollide(pointer,MouseX(),MouseY(),0,stop01,350,50,0) And mh=1 And musstop=0 Then musstop=1-musstop Flip fgg=MilliSecs()-a b=fgg-temptime If KeyHit(1) Then Exit Until b>96000 End |
||
Frauen und Technik?
Männer und BHs? Beides möglich. |
![]() |
DATISBetreff: Ich Idiot! |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oh, ich habe den dummen Fehler entdeckt:
Code: [AUSKLAPPEN] If ImagesCollide(pointer,MouseX(),MouseY(),0,stp,350,50,0) And mh=1 Then musstop=1-musstop
So muss es heißen. Weil musstop nur gewechselt wird, wenn musstop vorher 0 ist. Ist musstop 1 funktioniert es also auch nicht. Danke für die Hilfe und entschuldigung für meine dummen Fehler![/code] |
||
Frauen und Technik?
Männer und BHs? Beides möglich. |
![]() |
Schranz0r |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wieso machst du den Maushit in eine Variable rein?
das sollte gehen, habs jetzt nicht getestet, aber versuchs mal ![]() BlitzBasic: [AUSKLAPPEN]
die X und Y von dem Button in eine Variable Speichern dann sollte es gehen |
||
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
/slap Schranz0r
Dass man MouseX(), MouseY(), MouseHit(1) und was man sonst noch so alles braucht am Anfang der Schleife in Variablen speichert, versucht man hier (besonders im Beginners-Corner) den Leuten immer wieder einzutrichtern. Meistens klappts auch, weil sie die Erklärung (die recht einfach ist) auch verstehen. (Schau dich sonst mal hier ein bisschen um, fast jeder zweite Thread behandelt dieses Problem. Hier gehts allerdings nicht um das, da DATIS das von Anfang an korrekt gemacht hat.) -_- |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
![]() |
Schranz0r |
![]() Antworten mit Zitat ![]() |
---|---|---|
/slap Holzchopf zurück ![]() Der DATIS sollte sich ja hauptsächlich auf den Code konzentrieren ![]() Das mit Variablen , hab ich ja nur soooooooo nebenbei gesagt ![]() |
||
![]() |
garret |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wurde vor knapp 2 Tagen genau hier erläutert: https://www.blitzforum.de/foru...hp?t=19410
DATIS hat's ja auch gleich umgesetzt. Ein gelehriger Schüler. MfG garret |
||
>>nec aspera terrent<< (Auch Widerwärtigkeiten schrecken nicht) |
![]() |
DATISBetreff: Buttons - okay... Timer - naja... |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jep, danke.
Soweit ist das Problem mit den Buttons ja jetzt geklärt, aber ich habe probleme mit dem Timer. Der Funktioniert auch nicht. Meine Überlegung war: -Wenn man auf Stop klickt wird musstop aktiviert (Variable als 1 gesetzt) -Wenn musstop aktiviert ist, wird die Hintergrundmusik (song) pausiert. -Aber: es soll auch eine Zeit "gestoppt" werden, damit ich diese Zeit am Ende von der Variablen "b" abziehe. "b" ist auch eine gestoppte Zeit. -Wenn "b" dann 96000 (song ist nach 96 Sekunden zuende) ist, wird die Schleife beendet. Allerdings klappt es nicht so wirklich. Auch für dieses Problem bedanke ich mich schon für die Hilfe. |
||
Frauen und Technik?
Männer und BHs? Beides möglich. |
![]() |
garret |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde dir nicht empfehlen, mit festen Zeiten zu arbeiten, wie 96 Sekunden. Erstelle lieber einen Channel für deine Musik und frage dort ChannelPlaying() ab.
MfG garret |
||
>>nec aspera terrent<< (Auch Widerwärtigkeiten schrecken nicht) |
![]() |
DATISBetreff: Oh Super! |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Einfach nur ![]() Man war ich platt, als ich ChannelPlaying in deinem Post gesehen habe! Nach so einem Befehl habe ich gesucht, aber nicht gefunden. Danke! |
||
Frauen und Technik?
Männer und BHs? Beides möglich. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group