Ich dacht mir einfach nur, da theweice gefragt hat wie man einen Ordner öffnet wenn man einen Button drückt und ihr im die EventSchleife erklärt habt, dass ich mal kurz auf das Ordner-öffnen eingehe.mk-soft hat geschrieben:@hörmi,
ist nicht besonders Hilfreich für ein Neuling.
Button
Re: Button



Re: Button
Ich denke seine frage ist eher mit mit "OpenFileRequester(...)" zu beantworten und wie man die
Events verarbeitet.
Habe mal eine Basis für Anfängerfragen erstellt. Dazu habe ich die OpenWindow... in die Procedure Main gekapselt. Fanden einige besser um die Variablen nicht mehr Global zu haben.
Wir sollten uns auf eine gemeinsame Programmstruktur für kommende Fragen einigen.
Basis
FF 
Events verarbeitet.
Habe mal eine Basis für Anfängerfragen erstellt. Dazu habe ich die OpenWindow... in die Procedure Main gekapselt. Fanden einige besser um die Variablen nicht mehr Global zu haben.
Wir sollten uns auf eine gemeinsame Programmstruktur für kommende Fragen einigen.
Basis
Code: Alles auswählen
EnableExplicit
;- Konstanten
Enumeration ; Window ID
#Window
EndEnumeration
Enumeration ; Menu ID
#Menu
EndEnumeration
Enumeration ; MenuItem ID
#Menu_Exit
EndEnumeration
Enumeration ; Statusbar ID
#Statusbar
EndEnumeration
Enumeration ; Gadget ID
#Button_Open
EndEnumeration
; ***************************************************************************************
;- Globale Variablen
Global exit = 0
Procedure Main()
Protected style, event, window, menu, gadget, type
Protected dateiname.s
;- Fenster
style = #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget
If OpenWindow(#Window, #PB_Ignore, #PB_Ignore, 400, 300, "Fenster", style)
; Menu
If CreateMenu(#Menu, WindowID(#Window))
MenuTitle("&Datei")
MenuItem(#Menu_Exit, "Be&enden")
EndIf
; Statusbar
CreateStatusBar(#Statusbar, WindowID(#Window))
; Gadgets
ButtonGadget(#Button_Open, 10, 10, 120,24, "Öffnen")
;-- Hauptschleife
Repeat
event = WaitWindowEvent()
Select event
Case #PB_Event_Menu ; ein Menü wurde ausgewählt
menu = EventMenu()
Select menu
Case #Menu_Exit
Exit = 1
EndSelect
Case #PB_Event_Gadget ; ein Gadget wurde gedrückt
gadget = EventGadget()
type = EventType()
Select gadget
Case #Button_Open
If type = #PB_EventType_LeftClick
; Hier einfügen wenn der Button gedrückt wurde
dateiname = OpenFileRequester("Öffnen...", "", "", 0)
Debug dateiname
EndIf
EndSelect
Case #PB_Event_CloseWindow ; das Schließgadget vom Fenster wurde gedrückt
window = EventWindow()
If window = #Window
Exit = 1
EndIf
Case #PB_Event_Repaint ; der Fensterinhalt wurde zerstört und muss neu gezeichnet werden (nützlich für 2D Grafik-Operationen)
Case #PB_Event_SizeWindow ; das Fenster wurde in der Größe verändert
Case #PB_Event_MoveWindow ; das Fenster wurde verschoben
Case #PB_Event_ActivateWindow ; das Fenster wurde aktiviert (hat den Fokus erhalten)
Case #PB_Event_SysTray ; das SysTray wurde aktiviert
EndSelect
Until Exit
EndIf
EndProcedure : Main()

Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive