CatchSound() vor MessageRequester?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

EventGadget() , was geaendert wurde steht in der Hilfe.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

tjo... sowas überseh ich mal schnell wenn ich nur den code lese und nicht teste....
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Der Befehl EventGadgetID() ist aus früheren PB Versionen und jetzt einfach nur EventGadget().
Zuletzt geändert von Fluid Byte am 20.03.2007 13:59, insgesamt 1-mal geändert.
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Code: Alles auswählen

  InitSound()

  #button_XYZ = 0
  #button_ABC = 1
  
  #Sound      = 0
  
  hwnd = OpenWindow(0, 400, 400, 400, 200, "Was möchten Sie hören?", #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget)

  If CreateGadgetList(hwnd)
    ButtonGadget(#button_XYZ, 260, 50, 100, 70, "Band XYZ")
    ButtonGadget(#button_ABC, 30, 50, 100, 70, "Band ABC")
  EndIf
  
  Repeat
    EventID = WaitWindowEvent()
    
    If EventID = #PB_Event_Gadget
      
      Select EventGadget()
        Case #button_XYZ 
          If CatchSound(#Sound , ?Music1)
            PlaySound(#Sound ) 
          EndIf 
        Case #button_ABC
          If CatchSound(#Sound , ?Music2)
            PlaySound(#Sound ) 
          EndIf 
      EndSelect
      
    EndIf
    
  Until event = #PB_Event_CloseWindow


  DataSection
  Music1: IncludeBinary "c:\date.wav"
  Music2: IncludeBinary "c:\rammstein.wav"
  EndDataSection
Muesste so klappen.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

@edel
aber warum catchst du den sound on-demand und nich vorab?

...geht beides, denk ich....
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Weil ich so ein Objekt spare :wink:

ne keine Ahnung, fand ich huebsch ... oder so
Benutzeravatar
by night
Beiträge: 45
Registriert: 24.02.2007 21:52

Beitrag von by night »

edel hat geschrieben:

Code: Alles auswählen

  InitSound()

  #button_XYZ = 0
  #button_ABC = 1
  
  #Sound      = 0
  
  hwnd = OpenWindow(0, 400, 400, 400, 200, "Was möchten Sie hören?", #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget)

  If CreateGadgetList(hwnd)
    ButtonGadget(#button_XYZ, 260, 50, 100, 70, "Band XYZ")
    ButtonGadget(#button_ABC, 30, 50, 100, 70, "Band ABC")
  EndIf
  
  Repeat
    EventID = WaitWindowEvent()
    
    If EventID = #PB_Event_Gadget
      
      Select EventGadget()
        Case #button_XYZ 
          If CatchSound(#Sound , ?Music1)
            PlaySound(#Sound ) 
          EndIf 
        Case #button_ABC
          If CatchSound(#Sound , ?Music2)
            PlaySound(#Sound ) 
          EndIf 
      EndSelect
      
    EndIf
    
  Until event = #PB_Event_CloseWindow


  DataSection
  Music1: IncludeBinary "c:\date.wav"
  Music2: IncludeBinary "c:\rammstein.wav"
  EndDataSection
Muesste so klappen.

Wenn ich deinen Code bentze kommt folgende Fehlermeldung:

"polink: fatal error internal error write_executable_image.
PureBasic v4.00 (Windows - x86)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

by night hat geschrieben:Hm ... Er sagt mir "EventGadgetID() is not a function, array, makro or linked list"
Laß das ID weg :wink:

Code: Alles auswählen

EventGadget()
Das andere ist noch die alte Syntax von vor PB4

@Kaeru
wer weiß was hinter ?Music2 steckt, wird doch ?Music1 nicht mehr hören wollen
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
by night
Beiträge: 45
Registriert: 24.02.2007 21:52

Beitrag von by night »

Kann mir keiner was zu diesem Fehler sagen?

""polink: fatal error internal error write_executable_image."
PureBasic v4.00 (Windows - x86)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Guck mal im Taskmanager ob da noch eine Exe Deines Programmes läuft
und schiess es ab.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten