danke für die Nachfrage. Dein Einwand mit dem Verbot, in der generierten Datei Änderungen durchzuführen, ist mir klar. Das mache ich auch nicht.
(Hier ist mir gerade noch eingefallen, daß ich den Code doch verändert habe. Nämlich mit dem Ziel, die Registerreihenfolge zu ändern, habe ich die entsprechenden Zeilen im Code vertauscht. Ist das vielleicht die Ursache für das Problem??)
Ich versuche mal alles wichtige hier anzugeben. Zuerst mal das System:
Das Problem ist blöd zu beschreiben. Habe ein Fenster mit einem Exit-Button und einem PanelGadget. Dieses Panel hat z. Zt. drei Reiter. In einem der Reiter befindet sich ein Button, dessen Ereignis-Prozedur komplett aus dem Designer verschwindet (wenn der Fehler auftritt, von dem ich noch nicht weiß, warum und zu welchen Zeitpunkt er auftritt). Ein gleicher Button ist auch in einem weiteren Panelreiter untergebracht. Die Variablen unterscheiden sich aber (BtnDefaultsUmgebung und BtnDefaultsConfig). Beide haben als Beschriftung "Default"; vllt. ist das ein Schlüsselwort und führt zu dem Verhalten?!?
Das Fenster an sich hat keine Ereignisprozedur. Wohl aber ein weiterer Button mit der Beschriftung "Übernehmen". Seine Variable lautet "BtnUebernehmenN2Config" und seine Ereignisprozedur "EventBtnUebernehmenN2Config". Wenn der hier beschriebene Fehler auftritt, bekommt das ganze Fenster genau diese Ereignisprozedur zugewiesen, was natürlich vollkommenen Nonsens ergibt.
Ich hänge den Code der *.pbf Datei hier mal an. Dann kann das vielleicht nachvolzogen werden. Wenn ich diese pbf Datei einzeln, außerhalb des Projekts, öffne, tritt der Fehler fast jedesmal auf. Die Ereignisprozeduren verschwinden bzw. werden falsch gesetzt
Code: Alles auswählen
;
; This code is automatically generated by the FormDesigner.
; Manual modification is possible to adjust existing commands, but anything else will be dropped when the code is compiled.
; Event procedures needs to be put in another source file.
;
Global Einstellungen
Global BtnExitConfig, RegisterEinstellungen, Text_1, String_0, Text_2, Text_3, Text_4, Frame_0, BtnDefaultsUmgebung, Text_2_Copy1, Text_3_Copy1, Text_4_Copy1, Text_2_Copy2, Text_3_Copy2, Text_4_Copy2, Text_1_Copy1, Text_1_Copy1_Copy1, Text_1_Copy1_Copy1_Copy1, String_0_Copy1, String_0_Copy1_Copy1, Text_1_Copy1, String_0_Copy1, Option_0, Option_0_Copy1, GdgHeth, ListBMGewebeN2, ListBMGewebeHe, GdgHea, GdgHeb, GdgN2th, GdgN2a, GdgN2b, Text_0, Text_0_Copy1, Text_0_Copy2, GdgN2HeFaktor, BtnFaktorAnwendenConfig, BtnDefaultsConfig, GdgN2Nr, GdgHeNr, BtnUebernehmenN2Config, BtnUebernehmenHeConfig
Declare EventBtnUebernehmenN2Config(EventType)
Declare EventBtnExitConfig(EventType)
Declare EventBtnUebernehmenHeConfig(EventType)
Declare EventListBMGewebeHe(EventType)
Declare EventBtnDefaultsConfig(EventType)
Declare EventListBMGewebeN2(EventType)
Declare EventBtnFaktorAnwendenConfig(EventType)
Procedure OpenEinstellungen(x = 0, y = 0, width = 490, height = 520)
Einstellungen = OpenWindow(#PB_Any, x, y, width, height, "Einstellungen", #PB_Window_Invisible | #PB_Window_Tool | #PB_Window_WindowCentered, WindowID(HauptFenster))
BtnExitConfig = ButtonGadget(#PB_Any, 390, 480, 90, 30, "Ende")
RegisterEinstellungen = PanelGadget(#PB_Any, 10, 10, 470, 460)
AddGadgetItem(RegisterEinstellungen, -1, "Umgebung")
Text_1 = TextGadget(#PB_Any, 15, 23, 175, 20, "Höhe über Meer [m]:")
String_0 = StringGadget(#PB_Any, 195, 20, 45, 20, "0")
Text_2 = TextGadget(#PB_Any, 250, 23, 20, 20, "-->")
Text_3 = TextGadget(#PB_Any, 270, 23, 45, 20, "1013.25")
Text_4 = TextGadget(#PB_Any, 315, 23, 35, 20, "mbar")
Frame_0 = FrameGadget(#PB_Any, 15, 78, 225, 70, "Gewebesättigung zu Beginn:")
BtnDefaultsUmgebung = ButtonGadget(#PB_Any, 375, 8, 75, 30, "Defaults")
Text_2_Copy1 = TextGadget(#PB_Any, 25, 103, 25, 20, "->")
Text_3_Copy1 = TextGadget(#PB_Any, 50, 103, 145, 20, "Stickstoff im Gewebe [bar]:")
Text_4_Copy1 = TextGadget(#PB_Any, 195, 103, 35, 20, "0.0000")
Text_2_Copy2 = TextGadget(#PB_Any, 25, 123, 25, 20, "->")
Text_3_Copy2 = TextGadget(#PB_Any, 50, 123, 145, 20, "Helium im Gewebe [bar]:")
Text_4_Copy2 = TextGadget(#PB_Any, 195, 123, 35, 20, "0.0000")
Text_1_Copy1 = TextGadget(#PB_Any, 15, 163, 130, 20, "Luftzusammensetzung:")
Text_1_Copy1_Copy1 = TextGadget(#PB_Any, 150, 163, 110, 20, "Stickstoffanteil [%]:")
Text_1_Copy1_Copy1_Copy1 = TextGadget(#PB_Any, 150, 183, 110, 20, "Sauerstoffanteil [%]:")
String_0_Copy1 = StringGadget(#PB_Any, 260, 160, 45, 20, "0.0")
String_0_Copy1_Copy1 = StringGadget(#PB_Any, 260, 180, 45, 20, "0.0")
Text_1_Copy1 = TextGadget(#PB_Any, 15, 48, 175, 20, "Wasserdampfdruck Lunge [bar]:")
String_0_Copy1 = StringGadget(#PB_Any, 195, 45, 45, 20, "0.0000")
Option_0 = OptionGadget(#PB_Any, 20, 218, 85, 20, "Süßwasser")
SetGadgetState(Option_0, 1)
Option_0_Copy1 = OptionGadget(#PB_Any, 120, 218, 85, 20, "Salzwasser")
AddGadgetItem(RegisterEinstellungen, -1, "Dekompression")
AddGadgetItem(RegisterEinstellungen, -1, "Bühlmann")
GdgHeth = StringGadget(#PB_Any, 300, 370, 40, 18, "")
ListBMGewebeN2 = ListIconGadget(#PB_Any, 20, 70, 180, 295, "Nr", 25, #PB_ListIcon_GridLines | #PB_ListIcon_FullRowSelect | #PB_ListIcon_AlwaysShowSelection)
AddGadgetColumn(ListBMGewebeN2, 1, "T halbe", 51)
AddGadgetColumn(ListBMGewebeN2, 2, "a", 50)
AddGadgetColumn(ListBMGewebeN2, 3, "b", 50)
ListBMGewebeHe = ListIconGadget(#PB_Any, 270, 70, 180, 295, "Nr", 25, #PB_ListIcon_GridLines | #PB_ListIcon_FullRowSelect | #PB_ListIcon_AlwaysShowSelection)
AddGadgetColumn(ListBMGewebeHe, 1, "T halbe", 51)
AddGadgetColumn(ListBMGewebeHe, 2, "a", 50)
AddGadgetColumn(ListBMGewebeHe, 3, "b", 50)
GdgHea = StringGadget(#PB_Any, 350, 370, 40, 18, "")
GdgHeb = StringGadget(#PB_Any, 400, 370, 40, 18, "")
GdgN2th = StringGadget(#PB_Any, 50, 370, 40, 18, "")
GdgN2a = StringGadget(#PB_Any, 100, 370, 40, 18, "")
GdgN2b = StringGadget(#PB_Any, 150, 370, 40, 18, "")
Text_0 = TextGadget(#PB_Any, 20, 48, 90, 20, "Stickstoff")
Text_0_Copy1 = TextGadget(#PB_Any, 270, 48, 90, 20, "Helium")
Text_0_Copy2 = TextGadget(#PB_Any, 20, 18, 100, 20, "N2 -> He Faktor:")
GdgN2HeFaktor = StringGadget(#PB_Any, 110, 15, 40, 18, "")
BtnFaktorAnwendenConfig = ButtonGadget(#PB_Any, 155, 8, 70, 30, "Anwenden")
BtnDefaultsConfig = ButtonGadget(#PB_Any, 375, 8, 75, 30, "Defaults")
GdgN2Nr = StringGadget(#PB_Any, 20, 370, 25, 18, "")
GdgHeNr = StringGadget(#PB_Any, 270, 370, 25, 18, "")
BtnUebernehmenN2Config = ButtonGadget(#PB_Any, 50, 398, 130, 25, "Übernehmen")
BtnUebernehmenHeConfig = ButtonGadget(#PB_Any, 290, 398, 130, 25, "Übernehmen")
CloseGadgetList()
EndProcedure
Procedure Einstellungen_Events(event)
Select event
Case #PB_Event_CloseWindow
ProcedureReturn #False
Case #PB_Event_Menu
Select EventMenu()
EndSelect
Case #PB_Event_Gadget
Select EventGadget()
Case BtnExitConfig
EventBtnExitConfig(EventType())
Case ListBMGewebeN2
EventListBMGewebeN2(EventType())
Case ListBMGewebeHe
EventListBMGewebeHe(EventType())
Case BtnFaktorAnwendenConfig
EventBtnFaktorAnwendenConfig(EventType())
Case BtnDefaultsConfig
EventBtnDefaultsConfig(EventType())
Case BtnUebernehmenN2Config
EventBtnUebernehmenN2Config(EventType())
Case BtnUebernehmenHeConfig
EventBtnUebernehmenHeConfig(EventType())
EndSelect
EndSelect
ProcedureReturn #True
EndProcedure