[Qt] QT binding anomalies

zeljko zeljko at holobit.net
Fri Mar 5 18:35:28 CET 2010


On Friday 05 March 2010 18:06, Juha Manninen wrote:

> Well, this fix looked so good that I was sure it works but no...
> The same flicker is still there.
> I also tried the earlier changes but no difference.
> I will debug the code some more. I am quite sure it is related to the edit
> control. I just don't know this code well and have to guess a lot.

LCL is probably doing something, but also there could be some kind of loop 
between qt signals and LCL, nothing specially comes to my mind except things 
I mentioned before.
Maybe it would be best solution to disable all signals of TQtComboBox and 
TQtLineEdit and then see if there's flick.

You are inserting new item to combo items (using append() which calls add() 
which calls TQtComboBox.insertItem(), which is rounded by BeginUpdate() 
EndUpdate(), so in this case TQtComboBox signals should be blocked by 
statement "if InUpdate then exit;" inside signals procs.
It is possible that some of signals is delayed (from qt side) so it triggers 
eg:
Combo.BeginUpdate();
Combo.InsertItem();
Combo.EndUpdate();
<----- signal triggers here and sends msg to LCL , so it creates unneeded 
traffic between lcl and qt.

zeljko




More information about the Qt mailing list