procedure Tf_p200.cxButton2Click(Sender: TObject);
var
i : integer;
jepum, gu, danwi, pummyung : string;
bmTemp : TBookmark;
begin
if cxGrid1DBTableView1.Controller.SelectedRowCount > 0 then
begin
for i := 1 to cxGrid1DBTableView1.Controller.SelectedRowCount do
begin
// GotoBookmark(pointer(DBGrid4.SelectedRows.Items[i]));
---> dbgrid 에서 선택부분의 주소값으로 가기 위해서 사용한 부분입니다.
이것을 이용해서 퀀텀그리드에서도 위와 비슷한 방법으로 아래 처럼 하였습니다.
bmTemp := pointer(cxGrid1DBTableView1.Controller.SelectedRows[i]);
query1.DataSource.DataSet.GotoBookmark(bmTemp); ---> 오류메세지 발생
--> access violation at address 006343ff in module 'aaa.exe' . read of address 00000030
이런메세지가 발생합니다.
퀀텀그리드에서 선택부분의 수 만큼 for 문을 돌려면 변수의 값을 저장하고 싶은데 원인을
모르겠어요....
이 방법 말고 다른 방법이 있다면 가르쳐 주세요.... 고수님들 부탁드려요~~~
end;
end;
end;
end.
퀀텀 그리드는 잘 모르지만, SelectedRowCount -1 로
for 문을 한번 돌려보세요..
참고로 access violation 은 없는 주소값을 접근할때 발생합니다..