Seite 1 von 1

Sau dume Frage...:(

Verfasst: 14.04.2006 12:57
von jojoho
Hi,

Sry das is das jetz frag, die Frage is wirklich saudumm...
aber ich frag trotzdem mal und hoffe das ihr mir antwortet.

Also, ich hab mich gerade in PureBasic eingearbeitet und will jetzt ein kleines programm erstellen. Ich habe mir gedacht das ich einfach ein fenster erstell und ein ein menü. Man soll eine Musikdatei intigrieren können, und wenn man auf ein button drückt soll diese musik datei in iene mp3 datei umgewandelt werden. Leider habe ich keine ahnung und habe das auch in der anleitung nicht verstanden, wie man wenn der benutzer des programms auf eine schaltfläche drückt eine funktion auslöst. und wie des dann in PB geht. Und wie soll ich so eine bestimmte funktion wie das um wandeln in eine mp3 datei erstellen? danke und wie schon gesagt das is eine dumme frage aber ich hab tritz langem suchens nix verstanden:(
thx jo

Verfasst: 14.04.2006 13:29
von Kaeru Gaman
lass das umwandeln erstmal beiseite...

also, du hast ein grundproblem mit dem testen von buttons?

Verfasst: 14.04.2006 13:30
von mk-soft
ok, ich mache mal Werbung für mein Programm.

Lade dir mal von mir das Tool Visual Generic herrunter. das erledigt dir schon mal die ganze Arbeit für die Events von Menü´s und Gadget´s.

http://home.arcor.de/m_kastner/html/vis ... _v2_0.html
http://home.arcor.de/m_kastner/Setup_Vi ... icV201.exe

Für handling mit mp3 suche doch mal in CodeArchiv:
http://www.purearea.net/pb/german/index.htm

FF :wink:

Verfasst: 14.04.2006 13:31
von uweb
wie man wenn der benutzer des programms auf eine schaltfläche drückt eine funktion auslöst
Wahrscheinlich hast Du in der Hilfe bei ButtonGadget() gesucht und nichts gefunden.
Ich habe für die kommende Version schon vorgeschlagen die Hilfe um entsprechnde Links zu erweitern.

In Deinem Fall gibt es dort aber schon einen Link zu EventGadget().
Von dort aus gibt es dann einen zu WaitWindowEvent() und dort gibt es auch ein gutes Beispiel.


Mit dem Erzeugen von MP3 habe ich keine Erfahrung, aber folgendes gefunden:
http://www.purebasic.fr/german/viewtopi ... 3+erzeugen

Verfasst: 14.04.2006 13:46
von jojoho
ja aber es gibt ein problem:

Code: Alles auswählen


If OpenWindow(0, 100, 150, 195, 260, #PB_Window_SystemMenu, "Beispielmenue")

 

  If CreateMenu(0, WindowID())
    MenuTitle("Datei")
      MenuItem( 1 "Erstelle MP3")
      
     
  EndIf
  
  DisableMenuItem(3, 1)
  DisableMenuItem(13, 1)
  
 
  Repeat

    Select WaitWindowEvent()

      Case #PB_EventMenu

        Select EventMenuID()  
        
            Case 12
            
       

  If nValue > 0 

  EndIf 


  If nValue > 0 

  EndIf 

           
            
          Default

        EndSelect

      Case #WM_CLOSE 
        Quit = 1

    EndSelect

  Until Quit = 1

EndIf

End  
dann müsste ich jetzt bei Case

Code: Alles auswählen

; www.purearea.net (Sourcecode collection by cnesm)
; Author: 
; Date: 29. October 2003

Procedure RecordWav(filename$,ms) 
  buffer$=Space(128) : DeleteFile_(filename$) 
  mciSendString_("open new type waveaudio alias capture",buffer$,128,0) 
  mciSendString_("set capture samplesperbuffer 8000 bytesperbuffer 8000",0,0,0) 
  mciSendString_("record capture",buffer$,128,0) 
  Sleep_(ms) ; Wait for specified capture time to end. 
  mciSendString_("save capture "+filename$,buffer$,128,0) 
EndProcedure 
; 
MessageRequester("Info","Click OK to capture audio to c:\test.wav for 2 secs",0) 

RecordWav("c:\test.wav",2000) 
MessageRequester("Info","Done!",0) 

; ExecutableFormat=Windows
; EOF
einfügen wenn ich eine wave datei aufnehmen will... aber wenn ich das programm ausführe dann kommen nur Fehlermeldungen...
könnt ihr mir sagen, wass ich falsch mache

Verfasst: 14.04.2006 13:55
von mk-soft
Ist zwar nicht sauber programmiert weil Fenster keine Event´s dann mehr verarbeitet, aber geht.

Code: Alles auswählen

; www.purearea.net (Sourcecode collection by cnesm)
; Author:
; Date: 29. October 2003

Procedure RecordWav(filename$,ms)
  buffer$=Space(128) : DeleteFile_(filename$)
  mciSendString_("open new type waveaudio alias capture",buffer$,128,0)
  mciSendString_("set capture samplesperbuffer 8000 bytesperbuffer 8000",0,0,0)
  mciSendString_("record capture",buffer$,128,0)
  Sleep_(ms) ; Wait for specified capture time to end.
  mciSendString_("save capture "+filename$,buffer$,128,0)
EndProcedure
;


If OpenWindow(0, 100, 150, 195, 260, #PB_Window_SystemMenu, "Beispielmenue")

  If CreateMenu(0, WindowID())
    MenuTitle("Datei")
      MenuItem( 1, "Erstelle MP3")
  EndIf
 
  Repeat

    Select WaitWindowEvent()

      Case #PB_EventMenu

        Select EventMenuID() 
       
          Case 1
            MessageRequester("Info","Click OK to capture audio to c:\test.wav for 2 secs",0)
            RecordWav("c:\test.wav",2000)
            MessageRequester("Info","Done!",0)
           
          Default

        EndSelect

      Case #WM_CLOSE
        Quit = 1

    EndSelect

  Until Quit = 1

EndIf

End  

Verfasst: 14.04.2006 15:39
von freedimension
Kannst du bitte noch einen aussagekräftigeren Titel wählen?
Viele Fragen hier im Board sind sau dumm, selbst die vor
diesem Satz gestellte Frage ist sau dumm, denn sie dürfte
eigentlich gar nicht nötig sein ;)