Code: Alles auswählen
;PB4
;************* Enumeration *************
Enumeration : #window : EndEnumeration
Enumeration: #Menu : #popupeditor1: #Toolbar : EndEnumeration
Enumeration: #popupeditor1menu1 : EndEnumeration
Enumeration: #edit1 : #MyPopup : EndEnumeration
Procedure WindowCallback(WindowId, message, wParam, lParam)
Select message
Case #WM_CONTEXTMENU
If wParam = GadgetID(#edit1)
DisplayPopupMenu(#popupeditor1,WindowID(#window))
EndIf
ProcedureReturn 0
EndSelect
ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure
;************* Fensteraufbau *************
hwnd = OpenWindow(#window,0,0,800,600,fensterueberschrift$,#PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget)
SetWindowCallback(@WindowCallback())
SetWindowColor(0,RGB(100, 150, 100))
CreateGadgetList(hwnd)
CreateMenu(#Menu, hwnd)
EditorGadget(#edit1,20,20,760,560)
CreatePopupMenu(#popupeditor1)
MenuItem(#popupeditor1menu1,"Einfügen")
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
Select EventGadget()
Case #edit1 ; Editorfenster 1
EndSelect
Case #PB_Event_Menu ; ein Eintrag des Popup-Menüs wurde angeklickt
Select EventMenu()
Case 0
SendMessage_(GadgetID(#edit1), #WM_PASTE, 0, 0)
EndSelect
EndSelect
ForEver
Code bitte
Sinnvoll formatieren muß immer eine andere IDE
öffnen, um das korrigieren zu lassen
Reagiert jetzt auf das Kontextmenü des EditorGadgets, und nicht auf
irgendwelche Rechtsclicks (wäre nur eine Notlösung, bzw. bei 2
EditorGadgets schon nicht mehr brauchbar)
Die passende Message hat Alves leider vergessen gehabt, ansonsten hab
ich aber gehofft, das Du Dir auch mal selber was erarbeitest. Lediglich das
mit dem Callback konntest du nicht Wissen, die Messages hab ich Dir in
anderer Form schon mal zukommen lassen.
Es bringt aber nicht viel, dir den Code zu geben, solange Du nicht
nachliest, bzw. versuchst ihn zu verstehen.
PSDK wirste hoffenlich installiert haben, so das also per F1 immer Hilfe
zur Verfügung steht.
Wenn Du so weiter machst, auf meiner Homepage ist ein Spendenbutton
Gruß
Thomas
Der Sinn der Enumeration ist auch verfehlt bei Deinem Konstrukt, so kann
man nicht mal eben eine neue Konstante einfügen
