Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[98.84.25.165] |
|
Страницы: (2) 1 [2] все ( Перейти к последнему сообщению ) |
Сообщ.
#16
,
|
|
|
А в чем смысл оставлять вот это.
Position2[0,1]:=280; Position2[1,1]:=420; Position2[2,1]:=11; Position2[3,1]:=85; Position2[4,1]:=255; Position2[5,1]:=180; Position2[6,1]:=350; Position2[7,1]:=120; Position2[8,1]:=240; Position2[9,1]:=170; Position2[10,1]:=350; Position2[11,1]:=120; Position2[12,1]:=170; Position2[13,1]:=50; Position2[14,1]:=20; Position2[15,1]:=300; Position2[16,1]:=180; Position2[17,1]:=80; Position2[18,1]:=230; Position2[19,1]:=50; Position2[0,2]:=110; Position2[1,2]:=44; Position2[2,2]:=274; Position2[3,2]:=300; Position2[4,2]:=200; Position2[5,2]:=200; Position2[6,2]:=100; Position2[7,2]:=150; Position2[8,2]:=270; Position2[9,2]:=300; Position2[10,2]:=20; Position2[11,2]:=210; Position2[12,2]:=50; Position2[13,2]:=100; Position2[14,2]:=30; Position2[15,2]:=270; Position2[16,2]:=120; Position2[17,2]:=40; Position2[18,2]:=50; Position2[19,2]:=170; |
Сообщ.
#17
,
|
|
|
Цитата 2 А где это используется? Я код переписала, а не заново написала поэтому нигде, часть процедур сохранилось со старого примера. Цитата А в чем смысл оставлять вот это. Код же прокоментирован и там написано. Цитата //Стартовые позиции всех предметов Если убрать массивы то все предметы переместятся в угол экрана. Цитата Почему не заполнить массив сразу. Я уже написал как это сделать. Я прочитала ваша сообщение в самом начале, но когда стала переписывать код, просто не вспомнила, что можно и так сделать и сделала как было. |
Сообщ.
#18
,
|
|
|
Ответ: находится в Cs.TextOut передаются не те координаты. Хотя для рисования слотов идут "верные координаты".
Цитата //Создаем на холст предметы и пронумеруем их. в procedure TRect.Draw(Cs: TCanvas; x, y, id2, MapX, MapY: Integer); Рисуется и область и выводится нумерация. Если не точность идёт в расположении нумерации ( ), то ищем именно там. Скрытый текст procedure TRect.Draw(Cs: TCanvas; x, y, id2, MapX, MapY: Integer); begin Map_X := MapX; Map_Y := MapY; Form1.Canvas.Brush.Color:=color; Cs.Rectangle( // with Form1.Canvas do // begin Cs.Font.Name:= 'Numeration'; Cs.Font.Size:= 18; Cs.Font.Style:= [fsBold,fsItalic]; Cs.Font.Color:= clBlack; //clWindowText Cs.TextOut(x+Map_X,y+Map_Y, IntToStr(id1));//<- Здесь вместо x0,y0 Cs.Font.Color:= clBlack; end; |
Сообщ.
#19
,
|
|
|
RusSun, все исправила.
procedure TRect.Draw(Cs: TCanvas; x, y, id2, MapX, MapY: Integer); begin //x0 := x; //y0 := y; Map_X := MapX; Map_Y := MapY; Form1.Canvas.Brush.Color:=color; Cs.Rectangle(x+Map_X,y+Map_Y,x+width+Map_X,y+height+Map_Y); // with Form1.Canvas do // begin Cs.Font.Name:= 'Numeration'; Cs.Font.Size:= 18; Cs.Font.Style:= [fsBold,fsItalic]; Cs.Font.Color:= clBlack; //clWindowText // Cs.TextOut(x+Map_X,y+Map_Y, IntToStr(id1)); Cs.Font.Color:= clBlack; Cs.TextOut(x+Map_X,y+Map_Y, IntToStr(id1)); end; Теперь цифры добавляются и в слоты. Результат: Прикреплённый файлscreenshot1.jpg (43,98 Кбайт, скачиваний: 57) |
Сообщ.
#20
,
|
|
|
Прекрасно. А если еще к TextOut координатам добавить по единичке, тогда фон текста не будет стирать рамку.
procedure TRect.Draw(Cs: TCanvas; x, y, id2, MapX, MapY: Integer); begin //x0 := x; //y0 := y; Map_X := MapX; Map_Y := MapY; Form1.Canvas.Brush.Color:=color; Cs.Rectangle(x+Map_X,y+Map_Y,x+width+Map_X,y+height+Map_Y); // with Form1.Canvas do // begin Cs.Font.Name:= 'Numeration'; Cs.Font.Size:= 18; Cs.Font.Style:= [fsBold,fsItalic]; Cs.Font.Color:= clBlack; //clWindowText // Cs.TextOut(x+Map_X,y+Map_Y, IntToStr(id1)); Cs.Font.Color:= clBlack; Cs.TextOut(x+Map_X + 1,y+Map_Y + 1, IntToStr(id1)); end; |