existe t'il un string gadget que l'on peux remplir sur plusieurs lignes ?
Par exemple, lui inserer tout ca :
(en une fois)a
b
c
d
e
Peut on choisir la largeur d'un onglet ?
Peut on centrer le nom d'un onglet ?
Thx
(en une fois)a
b
c
d
e
Code : Tout sélectionner
Const=#ES_MULTILINE|#ESB_DISABLE_LEFT|#ESB_DISABLE_RIGHT
StringGadget(1, 5, 5, 200, 150,"",Const)
Code : Tout sélectionner
OpenWindow(0, 0, 0, 322, 150, "EditorGadget")
EditorGadget(0, 8, 8, 306, 133)
; Créer un texte
For i = 1 To 20
Txt$ + "ABC" + Chr(10)
Next
; Mettre le texte dans le gadget
SetGadgetText(0, Txt$)
; Définir le gadget actif
SetActiveGadget(0)
; Ajouter une ligne (vide) à la fin
AddGadgetItem(0, -1,"")
; Puis enlever cette ligne en trop
RemoveGadgetItem(0, CountGadgetItems(0)-2)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
SPH a écrit :comment voir automatiquement la fin du texte dans un EditorGadget ?
Code : Tout sélectionner
Declare Start()
Declare Exit()
Start()
Procedure Start()
OpenWindow(0, 0, 0, 800, 600, "Test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
EditorGadget(0, 10, 10, 500, 400, #PB_Editor_ReadOnly)
; Un peu de remplissage pour ce test
For n = 1 To 100
AddGadgetItem(0, -1, "Ligne " + Str(n))
Next
; Positionnement en fin d'editor
SendMessage_(GadgetID(0), #EM_SETSEL, -1, 0)
;Triggers
BindEvent(#PB_Event_CloseWindow, @Exit())
Repeat : WaitWindowEvent() : ForEver
EndProcedure
Procedure Exit()
End
EndProcedure
Code : Tout sélectionner
SendMessage_(GadgetID(0), #EM_SETSEL, 0, 0)
Et ça marche que sous Windowsfalsam a écrit : Pour se positionner au début (C'est pour info)Code : Tout sélectionner
SendMessage_(GadgetID(0), #EM_SETSEL, 0, 0)
Quelque chose de ce style te conviendrait mieux pour MacOS ?Mindphazer a écrit :Et ça marche que sous Windows
Code : Tout sélectionner
Declare Start()
Declare Exit()
Start()
Procedure Start()
OpenWindow(0, 0, 0, 800, 600, "Test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
EditorGadget(0, 10, 10, 500, 400, #PB_Editor_ReadOnly)
; Un peu de remplissage pour ce test
For n = 1 To 100
AddGadgetItem(0, -1, "Ligne " + Str(n))
Next
; Positionnement en fin d'editor
Range.NSRange\location = Len(GetGadgetText(0))
CocoaMessage(0, GadgetID(0), "scrollRangeToVisible:@", @Range)
;Triggers
BindEvent(#PB_Event_CloseWindow, @Exit())
Repeat : WaitWindowEvent() : ForEver
EndProcedure
Procedure Exit()
End
EndProcedure