Da der Original-Code schon sehr alt ist, schreibe ich gerade diesen komplett neu um besseren und flexibleren Event-Codes zu erstellen.
Nur die Oberfläche habe ich übernommen.
Auf meinen Server liegen die Versionen für Window, Linux und macOS bereit
Link: Projekt EventDesigner V3 (Release)
Info MacOS. Mit Safari kann man FTP-Ordner leider nicht mehr öffnen. Auf einen anderen Browser ausweichen.
Aufbau der Form-Datei ohne den FormDesigner von PurebasicMit der neuen Version wird jedes Formular eine eigene Event-Datei haben.
Eine nachträgliche Änderung oder Erweiterung der Formulardateien ist möglich. Nach dem Ändern der Formulardatei rufen Sie EventDesigner erneut auf.
Werden die Konstanten der Originalformulardatei geändert, erscheinen die Dialogfenster zur Zuordnung der alten Konstanten zu den neuen Konstanten.
Erstellen Sie mehrere Forms.pbf mit dem PureBasic FormDesigner ohne PB_Any und ohne Ereignisprozeduren und fügen Sie diese dem EventDesigner hinzu.
Nach erfolgreicher Erstellung der Ereigniscodes sind die folgenden Daten bereit.
- GuiCommonFile.pb
- GuiMainFile.pb
- GuiEventMainFile.pb
- GuiEvent[Formular].pb
* Die Option Bilder kopieren kopiert die Dateien in den Ordner [ProjectPath]/Resources.
* Mit macOS in den Ordner[ProjectPath]/MyAppData/Resources kopiert.
! macOS:
! Damit die Ressourcen zur Laufzeit in der APP zur Verfügung stehen, benötigen Sie das MacOS IDE-Tool MyAppData.
! Der für das Werkzeug erforderliche Code kann unter dem Menüpunkt Werkzeuge gespeichert werden.
Code: Alles auswählen
;-TOP
; Enumeration not used
LoadFont(#Constant, ...)
Use[XY]ImageDecoder()
LoadImage(#Constant, ...)
; ----
;{ Begin : This always in the same form file
Procedure Open[Window_Constant]()
If OpenWindow(#Window_Constant, ...)
; ...
EndIf
EndProcedure
; ----
Procedure ResizeGadgets[Window_Constant]()
; ...
EndProcedure
;} End
; ----
Procedure InitPopupMenu()
If CreatePopupImageMenu(#Popup_Constant[, ...])
; ...
EndIf
EndProcedure : InitPopupMenu() ; On same line
; ----
Procedure [Others]()
UseGadgetList(WindowID(#Window_Constant))
; ...
EndProcedure