本帖最后由 Catkin0502 于 2010-06-12 16:46:56 编辑

解决方案 »

  1.   

    第一步:先根据地图的尺寸算出每个网格的坐标点存到record里
    第二步:动态创建image,然后放到相应的坐标点就好了
      

  2.   

    小妹初学delphi,请高手详细说明一下。
      

  3.   

    4楼是看着小M这个字眼进来的
    PS:MS我也是
      

  4.   

    呵呵,楼主要绘制棋盘,下棋呀写一个函数就可以了PutImage(APoint: TPoint; var row, col: Integer); 给定一个位置,返回应该放在第几行,第几列
      

  5.   

    我曾经用C#写过象棋的小游戏。可是小妹初学delphi 对里面的运用还不是很清楚。
      

  6.   

    1、用 div 和 mod 得到是第几行,第几列。
    2、Math.Hypot(3,4) // =5 得到谁最近
    3、画图…… Canvas.Draw // 你是画围棋吧?
      

  7.   

    刚做了个类似的,网格在image上画就行了
    procedure TFOrm1.DrawGrid;
    var i,j:integer;
        H,V:integer;
    begin
        H:=Width div GridW;
        V:=Height div GridH;
        for i:=0 to H do
          for j:=0 to V do
            begin
              image1.Canvas.Pixels[i*GridW+GridL,j*GridH+GridT]:=clblack;
            end;
    end;
      

  8.   

    我的网格上面以后还要放小图片的,能放在image上面吗?
      

  9.   

    image上不能放其他的组件,我处理的时候是在scrollbox内放置一个image(用来画网格),其他动态生成的组件也放在scrollbox内,image只起一个参考网格的作用,看上去是放在网格内的,实际上是放在scrollbox内。