如果我有colA,ColB,Colc,ColD,並且TAdvStringGrid中每列有1000行。我想要檢查TAdvStringGrid的colA,ColB,Colc,ColD中1000行中值的雙重度量值的數量。如何比較TAdvStringGrid的4個列值並標記它們?
我正在做一些事情喜歡首先將ColA,ColB,ColC,ColD值讀入多維數組,並循環多維數組中的每個元素並與每個行元素TAdvStringGrid進行比較,當使用OnDrawcell函數發現相同時,並用一種顏色顯示該行。 然而,它需要很長的時間。有沒有更簡單的方法來做到這一點。隨着行數的不斷增加。提前感謝您的答覆。
每行都是一個測量值,一個測量值由ColA,B,C,D中的4個值組成。
List : array of array of double;
SetLength (List,AdvStringGrid.RowCount,4);
for i := 0 to AdvStringGrid.RowCount -1 do begin
j:=0;
List[i,j] := strtofloat(AdvStringGrid.Cells[4,i+1]);
List[i,j+1] := strtofloat(AdvStringGrid.Cells[5,i+1]);
List[i,j+2] := strtofloat(AdvStringGrid.Cells[8,i+1]);
List[i,j+3] := strtofloat(AdvStringGrid.Cells[9,i+1]);
end;{for i}
如何比較每個元素與鄰居並標記重複?
記錄是你是正確的,每一行是一個測量和一個測量由ColA,B,C,D中的4個值組成。 列表:雙數組數組; SetLength(List,AdvStringGrid.RowCount,4); for i:= 0到AdvStringGrid。RowCount -1 do begin j:= 0; List [i,j]:= strtofloat(AdvStringGrid.Cells [4,i + 1]); List [i,j + 1]:= strtofloat(AdvStringGrid.Cells [5,i + 1]); List [i,j + 2]:= strtofloat(AdvStringGrid.Cells [8,i + 1]); List [i,j + 3]:= strtofloat(AdvStringGrid.Cells [9,i + 1]); end; {for i} 如何比較每個元素與鄰居並標記重複? – mdel