Why InvalidateRow/InvalidateColum does not work?
Asked Answered
O

1

-1

InvalidateRow and InvalidateColum are not working for TStringGrid. The methods will not invalidate the entire Row/Col.

InvalidateGrid always works (so this could be a dirty work-arround until the cause of the bug is found).
In some circumstances (it seems to be random) InvalidateRow and InvalidateColum seem to work also. Update: I have found which circumstances will trigger the bug: the grid must be larger than the visible area and the position is outside of the view.

Any ideas?

Delphi 7, Win 7 32 bits

Oech answered 20/10, 2010 at 15:5 Comment(3)
If you have found an answer to your question, write it as answer and accept it. If you want to blame Codegear for a shameful bug, you are better to do it at Non-Technical Codegear forum at forums.codegear.com/forum.jspa?forumID=67 .Rusert
You haven't posted anything to indicate whether it's a Delphi bug or not, as all you say is "it doesn't work". "It doesn't work" is useless information. "I think happen about 7 days ago, but only today I realized" doesn't provide any information either. You haven't even described what happens, or posted any code or anything else. If you ask a bad question, you don't stand much chance of getting a good answer.Casabonne
@Rusert - links to bug AND solution provided as you requested :)Oech
O
2

"SOLVED" (Delphi VCL bug)

I have found that this bug exists since Delphi 1: http://qc.embarcadero.com/wc/qcmain.aspx?d=81060

Thanks Jeroen Wiert Pluimers for providing a solution!


Update:
The Embarcadero QC link is permanently broken (somebody should teach those guys to use 301 redirects) but here is the solution.

Also, here is the WayBackMachine: https://web.archive.org/web/20171220161153/http://qc.embarcadero.com/wc/qcmain.aspx?d=81060

Oech answered 20/10, 2010 at 15:29 Comment(7)
That doesn't answer the question of why this suddenly happened to you seven days ago. Go back seven days in your source control and see what changed. If it was working fine last week and now it's not, then it's not Delphi's fault; Delphi 7 did not change last week.Coryza
Nothing here was censored by moderators as far as I can tell. And you haven't provided any information to use to determine if it is a bug or not - see my comment to your original question.Casabonne
Looks like a Heisenbug: en.wikipedia.org/wiki/Unusual_software_bug#HeisenbugSitus
Note that QualityCentral has now been shut down, so you can't access qc.embarcadero.com links anymore. If you need access to old QC data, look at QCScraper.Diapositive
Well... we got used with having (permanently) broken links on Embarcadero web site every 3 years... right?Oech
@RobKennedy-Yes it does. The bug 81060 description clearly shown that the InvalidateCol does not always work. So, what are you debating here? The accuracy of the QC?Oech
@Ken - "you haven't provided any information" - Ken i posted a link to the OFFICIAL embarcadero website where they OFFICIALLY marked this as a bug? What kind of information do you need? I can ask them to send you a signed letter that this is a bug indeed. Is this information sufficient for you?Oech

© 2022 - 2024 — McMap. All rights reserved.