Page 1 of 1
Set "#ES_LOWERCASE" for StringGadget in Runtime
Posted: Fri Aug 28, 2009 2:19 pm
by +18
how can i set #ES_LOWERCASE flag for StringGadget in Runtime?
I use below code , made error only
Code: Select all
OpenWindow(0,0,0,100,100,"",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
StringGadget(0,25,37,70,25,"")
SendMessage_(GadgetID(0), #ES_LOWERCASE, 0, 0)
SetActiveGadget(0)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
Posted: Fri Aug 28, 2009 2:22 pm
by +18
And too, possible it set a group of flags in runtime.
Code: Select all
GroupFlags = #ES_MULTILINE|#ES_AUTOVSCROLL|#WS_VSCROLL|#WS_HSCROLL|#ESB_DISABLE_LEFT|#ESB_DISABLE_RIGHT
please a sample if it's possible
Thankful
Posted: Fri Aug 28, 2009 2:28 pm
by srod
Code: Select all
OpenWindow(0,0,0,100,100,"",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
StringGadget(0,25,37,70,25,"")
SetWindowLong_(GadgetID(0), #GWL_STYLE, GetWindowLong_(GadgetID(0), #GWL_STYLE)|#ES_LOWERCASE)
SetActiveGadget(0)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
Works on Vista - not sure about XP ?
Posted: Fri Aug 28, 2009 2:32 pm
by +18
Thanks srod
work on XP excellent
Posted: Sat Aug 29, 2009 8:05 am
by Kwai chang caine
Hello SROD
Cool this tips
But it create a question in my head :roll:
Is it possible to cancel this function in runtime ???
Posted: Sat Aug 29, 2009 8:37 am
by gnozal
Kwaï chang caïne wrote:Is it possible to cancel this function in runtime ???
Add style :
Bitwise OR #Style
Code: Select all
SetWindowLong_(GadgetID(x), #GWL_STYLE, GetWindowLong_(GadgetID(x), #GWL_STYLE) | #MyStyle)
Remove style :
Bitwise AND NOT (#Style)
Code: Select all
SetWindowLong_(GadgetID(x), #GWL_STYLE, GetWindowLong_(GadgetID(x), #GWL_STYLE) & ~#MyStyle)
http://www.purebasic.com/documentation/ ... ables.html
Posted: Mon Aug 31, 2009 10:59 am
by Kwai chang caine
Yeeeaaaahhh again more cool

And the best miracle, it's that KCC have understand
Thanks too for your tips GNOZAL
My life for 10% of your knowledge
I wish you a good good day
Posted: Wed Sep 02, 2009 6:11 pm
by Alireza
oh, i need same code for a SetSortedCombobox after executed my project:
Work:
Code: Select all
; http://www.purebasic.com
; Author: Andre Beer (updated for PB4.00 by blbltheworm)
; Date: 27. May 2003
; OS: Windows
; Demo: No
If OpenWindow(0,100,130,220,100,"ComboBox Sorted",#PB_Window_SystemMenu)
If WindowID(0)
cb.l = ComboBoxGadget(1,10,10,200,25,#CBS_SORT)
SendMessage_(cb,#CB_ADDSTRING,0,"3") ; the items will be added in random order
SendMessage_(cb,#CB_ADDSTRING,0,"4")
SendMessage_(cb,#CB_ADDSTRING,0,"1") ; .... but they will be displayed in sorted order
SendMessage_(cb,#CB_ADDSTRING,0,"2")
EndIf
Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow
EndIf
; IDE Options = PureBasic v4.00 (Windows - x86)
; Folding = -
; EnableXP
Don't work:
Code: Select all
; http://www.purebasic.com
; Author: Andre Beer (updated for PB4.00 by blbltheworm)
; Date: 27. May 2003
; OS: Windows
; Demo: No
If OpenWindow(0,100,130,220,100,"ComboBox Sorted",#PB_Window_SystemMenu)
If WindowID(0)
cb.l = ComboBoxGadget(1,10,10,200,25)
;------------------
SetWindowLong_(GadgetID(1), #GWL_STYLE, GetWindowLong_(GadgetID(1), #GWL_STYLE) | #CBS_SORT);<<<<<<<<<<<<<<<<<<<<<<
;------------------
SendMessage_(cb,#CB_ADDSTRING,0,"3") ; the items will be added in random order
SendMessage_(cb,#CB_ADDSTRING,0,"4")
SendMessage_(cb,#CB_ADDSTRING,0,"1") ; .... but they will be displayed in sorted order
SendMessage_(cb,#CB_ADDSTRING,0,"2")
EndIf
Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow
EndIf
; IDE Options = PureBasic v4.00 (Windows - x86)
; Folding = -
; EnableXP
Masters ,Help
Merci
Posted: Wed Sep 02, 2009 6:18 pm
by srod
Many styles cannot be set (or unset) after the control is created. I would guess that this is one such style.
Posted: Wed Sep 02, 2009 6:22 pm
by Alireza
Ok, then i think must be a lot of fortune in hand
Thanks srod