| 
| 
 | Вопрос # 2 556/ вопрос открыт / | 
 |  Здравствуйте, эксперты!Решила к Вам обратиться с таким вопросом. Дело в том, что не так давно нашла хороший учебник с иллюстрацией программы в коде. Суть в том, что не получается вывести на Image ряд картинок, с дальнейшей возможностью их перетаскивания и соединения.
 По учебнику эти изображения хранятся в текстовом файле и каждому соответствует наименование object (это для массива).
 Приложение:Переключить в обычный режим  CALC.BMP Object 1CALCOLD.BMP Object 2CALENDAR.BMP Object 3CHECKMRK.BMP Object 4CLDTABL.BMP Object 5CLIP01.BMP Object 6///////////////////////////////private     NumIco,NumObj,NumSel,NumLin: byte;    NumDrag: shortint;    xt,yt,xk,yk: integer;    Bitmap: TBitmap;    Ok: boolean;{ Private declarations }     procedure ShowIco;    procedure ShowObj;.....const ch=64; c7=15; hx=32; hy=32; del=4;      x0=0; y0=0; cLin=20; cObj=20; cBmp=30; type TObj=record       u,v: integer;       Nam: string[12];     end;     TLin=record       xc,y1c,y2c: integer;       n1,n2: byte;       fl_net: byte;     end;     TObmp=record       namefile: string[12];       name: string[12];     end;var  Form1: TForm1;  s: string;  f: textfile;  Obj: array[1..cObj] of TObj;  Lin: array[1..cLin] of TLin;  Obmp: array[0..cBmp] of TObmp;  f1: file of TObj;  f2: file of TLin;  FileN,FileP: string[60]; Implementationprocedure TForm1.FormActivate(Sender: TObject);var i: integer;    q: byte;begin  k:=0; NumDrag:=-1; NumObj:=0;   NumLin:=0; fl_tools:=0;  Bitmap:= TBitmap.Create;  i:=-1;  AssignFile(f,'Bmp.txt'); Reset(f);  while not EOF(f) do  begin    Readln(f,s); Inc(i); q:=Pos(' ',s);    Obmp[i].namefile:=Copy(s,1,q-1);    Obmp[i].name:=Copy(s,q+1,Length(s)-q);  end;  CloseFile(f);  NumIco:=i+1;  end;  procedure TForm1.ShowIco;var i: integer;begin  with Image1.Canvas do  begin    Font.Name:='Sans Serif';    Font.Size:=6;    Brush.Color:=$00C4F7FF;    RectAngle(-1,-1,Width,Height);    Brush.Color:=clWhite;    for i:=fl_ofs to c7+fl_ofs do    begin      begin        Bitmap.LoadFromFile(Obmp[i].namefile);        Brush.Color:=clWhite;        RectAngle(10+((i-fl_ofs) mod 2)*ch-1,             10+((i-fl_ofs) div 2)*ch-1,             10+((i-fl_ofs) mod 2)*ch+33,             10+((i-fl_ofs) div 2)*ch+33);        Draw(10+((i-fl_ofs) mod 2)*ch,             10+((i-fl_ofs) div 2)*ch,Bitmap);        Brush.Color:=$00C4F7FF;        TextOut(10+((i-fl_ofs) mod 2)*ch,             10+((i-fl_ofs) div 2)*ch+34,Obmp[i].name);      end;    end;  end;end; 
|  |   Вопрос задала: Ekaterina_20 (статус: Посетитель)Вопрос отправлен: 23 марта 2009, 22:30
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаМини-форум пуст. Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |