Everything looks right in your code. Make sure that variable "i" in bound. Anyway, even if "i" out-of-bound, this shound't raise Access Violation.
Tested with Delphi XE2 and XE4.
I suppose that error occure in code that not showed in your sample.
Question
I'm new in delphi and i thought it might be safer to swap object names in loop instead of copying whole block for each object. So I need to use variable name as some objects name. Here is an example of what i tried and what i am trying to do.
Var
YazGrid: TStringGrid;
I defined a variable for grid name as above and i am trying to use like this:
Some Loop
begin
if a_variable>=10 then
YazGrid:=form1.StringGrid1
else
YazGrid:=form1.StringGrid2;
YazGrid.Cells[1,i] := 'SomeText';
End;
As the result- it comes out with the "Access Violation" error. How should i do this?
Thanks in advance.
Solution
Everything looks right in your code. Make sure that variable "i" in bound. Anyway, even if "i" out-of-bound, this shound't raise Access Violation.
Tested with Delphi XE2 and XE4.
I suppose that error occure in code that not showed in your sample.