帮忙看一个程序解决办法

帮忙看一个程序
shang:=tbm.Height;
you:=0;
xia:=0;
zuo:=tbm.Width;

for h:=5 to tbm.Height-5 do
begin
//row:=tbm.ScanLine[h];
for w:=5 to tbm.Width-5 do
begin
if tbm.Canvas.Pixels[h,w]<>clblack then
begin
  if w<zuo then
  zuo:=w;
  if w>you then
  you:= w;
  if h>xia then
  xia:=h;
  if h<shang then
  shang:=h;
   
  //找出非黑的最大最小像素
end;
end;
end; 这个图片是黑色背景中间一个红色球体 要找出球体范围 但是总是不对 为什么

------解决方案--------------------
背景为全黑没问题的话, 改一下这里: tbm.Canvas.Pixels[h, w] 
括号里是先写横坐标, 再写纵坐标, 所以应该改成: tbm.Canvas.Pixels[w, h]