local oForm, ListImages_Handler activate screen clear oForm = CreateObject('form') ? 'OLEimg:', Iif(oForm.AddObject('OLEimg', 'OLEcontrol', 'MSComctlLib.ImageListCtrl.2'), 'OK', 'KO :(') && OK ListImages_Handler = CreateObject("ListImages_Handler") && see below ? 'ListImages_Handler:', Iif(Vartype(m.ListImages_Handler) == 'O', 'OK', 'KO :(') && OK ? 'EventHandler():', iif(EventHandler(m.oForm.OLEimg.ListImages, m.ListImages_Handler), 'OK', 'KO :(') && KO -- why? ? 'ListImages.add():', Iif(Vartype(m.oForm.OLEimg.ListImages.add(, Home(1) + 'Graphics\Bitmaps\Gauge\dome.bmp', LoadPicture(Home(1) + 'Graphics\Bitmaps\Gauge\dome.bmp'))) == 'O', 'OK', 'KO :(') && OK && Generated by dragging & dropping from object browser: MSComctlLib > Interfaces > Hidden Dispatch Interface IImages DEFINE CLASS ListImages_Handler AS session OLEpublic IMPLEMENTS IImages IN "MSComctlLib.ImageListCtrl.2" PROCEDURE IImages_get_ControlDefault(Index AS VARIANT) AS VARIANT * add user code here ENDPROC PROCEDURE IImages_put_ControlDefault(Index AS VARIANT) AS VARIANT * add user code here ENDPROC PROCEDURE IImages_get_Count() AS INTEGER; HELPSTRING "Returns the number of objects in a collection." * add user code here ENDPROC PROCEDURE IImages_put_Count(eValue AS INTEGER @); HELPSTRING "Returns the number of objects in a collection." * add user code here ENDPROC PROCEDURE IImages_get_Item(Index AS VARIANT) AS VARIANT; HELPSTRING "Returns a specific member of a Collection object either by position or by key." * add user code here ENDPROC PROCEDURE IImages_put_Item(Index AS VARIANT, Key AS VARIANT, Picture AS VARIANT) AS VARIANT && 2017-09-19 thn -- {en} added for instantiation to succeed ENDPROC PROCEDURE IImages_Add(Index AS VARIANT, Key AS VARIANT, Picture AS VARIANT) AS VARIANT; HELPSTRING "Adds a ListImage object to a ListImages collection and returns a reference to the created object." ? 'IImages_Add()', m.key && does not fire ENDPROC PROCEDURE IImages_Clear() AS VOID; HELPSTRING "Removes all objects in a collection." * add user code here ENDPROC PROCEDURE IImages_Item(Index AS VARIANT) AS VARIANT; HELPSTRING "Returns a specific member of a Collection object either by position or by key." * add user code here ENDPROC PROCEDURE IImages_Remove(Index AS VARIANT) AS VOID; HELPSTRING "Removes a specific member from a collection." * add user code here ENDPROC PROCEDURE IImages__NewEnum() AS VARIANT * add user code here ENDPROC enddefine