I agree, Fabio. Individual clicks use InteractiveChange, but holding the mouse button uses ProgrammaticChange. Possibly to Microsoft's way of thinking, since you don't click the button, then the program is making the change for you, and so it uses ProgrammaticChange.
In a kind of twisted logic, maybe it makes a sort of sense, but I have to agree with you. I think it should be using InteractiveChange.
Alan
>Fill a ListBox, hold down left mouse button,
>and move on list Items:
>
multiple ProgrammaticChange occurs>
>correct is multiple InteractiveChange !
>
>repro:
>
>PUBLIC oform1
>
>oform1=NEWOBJECT("form1")
>oform1.Show
>RETURN
>
>DEFINE CLASS form1 AS form
>
> ShowWindow = 2
> DoCreate = .T.
> Caption = "Form1"
> Name = "Form1"
>
>
> ADD OBJECT list1 AS listbox WITH ;
> RowSourceType = 1, ;
> RowSource = "AAAA,BBBB,CCCC,DDDD,EEEE", ;
> Height = 170, ;
> Left = 20, ;
> Top = 11, ;
> Width = 100, ;
> Name = "List1"
>
> PROCEDURE list1.ProgrammaticChange
> WAIT windows "programmaticchange "+STR(m.this.ListIndex) NOWAIT
> ENDPROC
>
>
>ENDDEFINE
>
>
>Fabio