is assigned(onchanged) True When a Property of the Object Changed ?
Assigned(MyComboBox.OnChange) will be True when you have got an event handler for the box's OnChange event. When you do a change by code you can do something like:
MyComboBox.ItemIndex := 0;
if Assigned(MyComboBox.OnChange) then
MyComboBox.OnChange(MyComboBox);
That ensures that there is a handler assigned to OnChange; otherwise you run the risk, if it isn't, that the call ends up in la-la-land, which would produce a segmentation fault. Of course, if you're absolutely sure that the handler is there (and assigned, e.g. because you set it at design-time) you can omit the test, though I don't recommend it: one never knows what might happen in the future and this ensures that no matter what your code will always work and not jump around picking berries