ScintillaGadget()
Syntax
Ergebnis = ScintillaGadget(#Gadget, x, y, Breite, Höhe, @Callback())Beschreibung
Erstellt ein neues Scintilla Editor-Control innerhalb der aktuellen Gadgetliste. Wenn #PB_Any als '#Gadget' Parameter verwendet wird, dann wird die neue Gadgetnummer als 'Ergebnis' zurückgegeben.
'@callback()'sollte die Adresse einer Prozedur sein, um Ereignisse vom Control zu empfangen. Sie muss wie folgt definiert werden, wobei 'Gadget' die Gadgetnummer des Controls ist und *scinotify auf eine Struktur mit Informationen über das Ereignis zeigt:ProcedureDLL ScintillaCallBack(Gadget, *scinotify.SCNotification) ; ; Die ProcedureDLL Deklaration ist wichtig, damit der Callback korrekt auf MacOSX arbeitet, ; auf allen anderen OS hat er keinen Effekt. ; EndProcedureNach der Erstellung können Scintilla-spezifische Befehle mit dem ScintillaSendMessage() Befehl an das Control gesandt werden. Zusätzlich können ebenfalls die gebräuchlichen Gadget-Befehle wie ResizeGadget() oder HideGadget() mit dem Control verwendet werden.Beispiel:
If OpenWindow(0, 0, 0, 320, 90, "ScintillaGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) If InitScintilla() ScintillaGadget(0, 10, 10, 300, 70, #Null) ; Output set to red color ScintillaSendMessage(0, #SCI_STYLESETFORE, 0, RGB(255, 0, 0)) ; Set the initial text to the ScintillaGadget ScintillaSendMessage(0, #SCI_SETTEXT, 0, @"This is a simple ScintillaGadget with text...") ; Adding a second line of text with linebreak before Text$ = Chr(10) + "Second line" ScintillaSendMessage(0, #SCI_APPENDTEXT, Len(Text$), @Text$) EndIf Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow EndIf
Unterstützte OS
Alle