Restored from previous forum. Originally posted by cor.
Below is a changed version for combobox event handling even if ESC is pressed after select the combobox. (no item selection will be executed)
Based on Franco's template
It's working for me:
Code: Select all
; Combobox event changed so that pressing ESC key after pressing the combobox doesn't effect
; the selection
; lines with comment '; added' are added
;
; based on Franco's temlate
; (c) 2002 - Franco's template - absolutely freeware
; Little example for the right use of the ComboBox Event
;
Global gadgetsetting.b ; added
gadgetsetting =-1 ; added
OpenWindow(1,200, 200, 320,240,"Window",#PB_Window_SystemMenu|#PB_Window_SizeGadget)
CreateMenu(1, WindowID(1))
MenuTitle("File")
MenuItem(1,"New")
MenuItem(2,"Open")
MenuItem(3,"Save")
CreateToolBar(1, WindowID(1))
ToolBarStandardButton(4,#PB_ToolBarIcon_New)
ToolBarStandardButton(5,#PB_ToolBarIcon_Open)
ToolBarStandardButton(6,#PB_ToolBarIcon_Save)
ButtonGadget(1, 10, 30, 100, 25,"Button 1")
ComboBoxGadget(2, 10, 120, 150, 25)
AddGadgetItem(2, -1, "ComboBox Item 1")
AddGadgetItem(2, -1, "ComboBox Item 2")
AddGadgetItem(2, -1, "ComboBox Item 3")
AddGadgetItem(2, -1, "ComboBox Item 4")
Repeat
EventID = WaitWindowEvent()
Select EventID
; Menu/ToolBarEvent
Case #PB_Event_Menu
MessageRequester("Menu or Toolbar","Item #: "+Str(EventMenu()),0)
; GadgetsEvents
Case #PB_Event_Gadget
Select EventGadget()
; ButtonGadget
Case 1
Select EventType()
Case #PB_EventType_LeftClick
MessageRequester("Gadget","Button",0)
EndSelect
; ComboBoxGadget
Case 2
Select EventType()
Case #PB_EventType_RightClick
If gadgetsetting <> GetGadgetState(2) ;added
MessageRequester("Gadget","ComboBox",0)
gadgetsetting=GetGadgetState(2) ;added
EndIf ;added
EndSelect
EndSelect
EndSelect
Until EventID = #PB_Event_CloseWindow
End
Registered PB version : 3.2 (Windows)
--------------------------
C. de Visser
Author of Super Guitar Chord Finder
http://www.ready4music.com