Seite 1 von 2

Liste der Events

Verfasst: 26.08.2006 03:09
von DW
Ok. Ich habe jetzt Purebasic und wollte fragen, ob jemand eine Liste der ganzen events machen könnte?

Danke.

Verfasst: 26.08.2006 04:19
von edel
Schau mal unter EventType() und WindowEvent() nach.

Eine Liste der Windows-Events gibt es hier im Forum,
die duerfte aber alles andere als vollstaendig sein.
Hier schauste am besten bei MSDN vorbei.

Verfasst: 26.08.2006 04:21
von Zaphod
Stehen alle unter Tools>Structureviewer>Constants

Verfasst: 26.08.2006 04:50
von DW
Ok. Danke.

Eine andere Frage, ich bin ja BBler und da kann man Problemlos einen String in einer Funktion zurückgeben(return variable). Aber bei PB geht das mit procedurereturn nicht. Gibts es dafür einen anderen Befehl?

Verfasst: 26.08.2006 04:52
von edel
Du musst den Typ angeben .

Beispiel :

Code: Alles auswählen

Procedure.s test(String.s)
  ProcedureReturn String
EndProcedure

Debug test("lala")

Verfasst: 26.08.2006 06:06
von DW
Coole Sprache. Habe mal ein Printer Dll für Blitz3d geschrieben: http://ultimative.ul.ohost.de/APrinter.zip


Eine Frage, darf man geschriebene Dlls in PB auch weiterverkaufen oder überhaupt nutzen?
In BM ist es nämlich so, dass man nur die Funktionen von pub in seinen dlls benutzen darf.

Verfasst: 26.08.2006 12:49
von edel
Alle Bestandteile, Bibliotheken und alle Binär-Dateien sind von Fantaisie Software urheberrechtlich geschützt. Die PureBasic Lizenz verbietet ausdrücklich die Erstellung von DLL's, deren Hauptfunktion es ist, als ein 'Wrapper' für PureBasic-Funktionen zu dienen.
Wenn du also die PB Befehle unter Blitz haben moechtest bzw verkaufen moechtest , lautet die Antwort : Nein.

Verfasst: 26.08.2006 13:16
von Kaeru Gaman
edel hat geschrieben:
Alle Bestandteile, Bibliotheken und alle Binär-Dateien sind von Fantaisie Software urheberrechtlich geschützt. Die PureBasic Lizenz verbietet ausdrücklich die Erstellung von DLL's, deren Hauptfunktion es ist, als ein 'Wrapper' für PureBasic-Funktionen zu dienen.
Wenn du also die PB Befehle unter Blitz haben moechtest bzw verkaufen moechtest , lautet die Antwort : Nein.
aber die betonung liegt auf "Hauptfunktion".
wenn du eine DLL erstellst, die als 2D-Game engine fungiert, die umfangreiche funktionen beinhaltet, die hauptsächlich aus vielen PB-Befehlen zusammengesetzt sind, also eindeutig eine eigene Funktionalität beinhalten, dann darfst du diese DLL weiterverbreiten.

Verfasst: 26.08.2006 15:11
von DW
Und was ist mit dem Printer? Ich kann ja wohl schlecht eine Printfunktion in PB aus zig Befehlen zusammenstellen.


Und bei der Dll sample ist auch nur ein messagerequester und das ist auch eine Funktion von PB, warum sollten die dann ein sample schreiben, das verboten ist?

Oder gilt das nur für BB und für C++ ist es erlaubt?


Kann ich das irgendwo nachlesen?

Verfasst: 26.08.2006 15:21
von ts-soft
Das wrappen von PB-Funktionen um sie anderen
Programmiersprachen zur Verfügung zu stellen ist verboten
Wrappenbeispiel:

Code: Alles auswählen

ProcedureDLL Print_Requester()
  PrintRequester()
EndProcedure
Erlaubt wäre:

Code: Alles auswählen

ProcedureDLL PrinterTest()
If PrintRequester()

  If StartPrinting("PureBasic Test")
  
    If StartDrawing(PrinterOutput())

      DrawingFont(LoadFont(0, "Arial", 30))
  
      DrawText(100, 100, "PureBasic Printer Test")
      
      DrawingFont(LoadFont(0, "Arial", 100))
      
      DrawText(100, 400, "PureBasic Printer Test 2")
    
      If LoadImage(0, "Data\PureBasic.bmp")
        DrawImage(ImageID(0), 200, 600)
      Else
        MessageRequester("Error","Can't load the image")
      EndIf
      
      FrontColor(RGB(100,100,100))
      Box(200, 600, 100, 100)
        
      StopDrawing()
    EndIf
    
    StopPrinting()
  EndIf
EndIf

EndProcedure
Ansonsten könnte man ja die ganzen PB-Funktionen in eine DLL packen und an die Benutzer anderer Programmiersprachen verkaufen, die bräuchten sich dann PB nicht mehr zuzulegen und die ganze Arbeit von Fred & Co wäre für die Katz :wink: